Method for selecting medical and biochemical diagnostic tests using neural network-related applications

ABSTRACT

Computer systems and methods for diagnosing endometriosis and for assessing the risk of delivery within selected time period after performing a test to assess the rist of preterm delivery or before thirty-five weeks of gestation are provided.

[0001] This application is a continuation of allowed U.S. application Ser. No. 08/912,133, filed Aug. 14, 1997, to Jerome Lapointe and Duane DeSieno entitled “METHOD FOR SELECTING MEDICAL AND BIOCHEMICAL DIAGNOSTIC TESTS USING NEURAL NETWORK-RELATED APPLICATIONS.” This application is a continuation-in-part of U.S. application Ser. No. 08/798,306, filed Feb. 7, 1997 entitled “METHOD FOR SELECTING MEDICAL AND BIOCHEMICAL DIAGNOSTIC TESTS USING NEURAL NETWORK-RELATED APPLICATIONS” to Jerome Lapointe and Duane DeSieno. This application is also a continuation-in-part of U.S. application Ser. No. 08/599,275, filed Feb. 9, 1 996, to Jerome Lapointe and Duane DeSieno, entitled “METHOD FOR DEVELOPING MEDICAL AND BIOCHEMICAL DIAGNOSTIC TESTS USING NEURAL NETWORKS.” U.S. application Ser. No. 08/798,306 is a continuation-in-part of U.S. application Ser. No. 08/599,275. This application and U.S. application Ser. No. 08/798,306 claim the benefit of priority under 35 U.S.C. §119(e) to U.S. provisional application Ser. No. 60/011,449, entitled “METHOD AND APPARATUS FOR AIDING IN THE DIAGNOSIS OF ENDOMETRIOSIS USING A PLURALITY OF PARAMETERS SUITED FOR ANALYSIS THROUGH A NEURAL NETWORK” to Jerome Lapointe and Duane DeSieno, filed Feb. 9, 1 996.

[0002] The subject matter of each of the above-noted applications and provisional application is herein incorporated in its entirety by reference thereto.

APPENDICES

[0003] Three computer Appendices containing computer program source code for programs described herein have been submitted concurrently with the filing of this application. The Computer Appendices were converted to Computer Program Listing Compact Disk Appendices pursuant to 37 C.F.R. 1.96(c). Appendices I, II, and IIII are on compact disks, copy 1 and copy 2, and stored under the file name AppenixI-III.txt, 392KB, created on Jan. 10, 2002. The compact disks, copy 1 and copy 2, are identical. The information submitted on the Compact Disk is in compliance with the American Standard Code for Information Interchange (ASCII) in the IBM-PC machine format compatible with the MS-Windows operating system. The Computer Appendices, which are referred to hereafter as the “Compact Disk Appendices”, are each incorporated herein by reference in its entirety.

[0004] Thus, a portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.

FIELD OF THE INVENTION

[0005] This subject matter of the invention relates to the use of prediction technology, particularly nonlinear prediction technology, for the development of medical diagnostic aids. In particular, training techniques operative on neural networks and other expert systems with inputs from patient historical information for the development of medical diagnostic tools and methods of diagnosis are provided.

BACKGROUND OF THE INVENTION Data Mining, Decision Support-Systems and Neural Networks

[0006] A number of computer decision-support systems have the ability to classify information and identify patterns in input data, and are particularly useful in evaluating data sets having large quantities of variables and complex interactions between variables. These computer decision systems which are collectively identified as “data mining” or “knowledge discovery in databases” (and herein as decision-support systems) rely on similar basic hardware components, e.g., personal computers (PCS) with a processor, internal and peripheral devices, memory devices and input/output interfaces. The distinctions between the systems arise within the software, and more fundamentally, the paradigms upon which the software is based. Paradigms that provide decision-support functions include regression methods, decision trees, discriminant analysis, pattern recognition, Bayesian decision theory, and fuzzy logic. One of the more widely used decision-support computer systems is the artificial neural network.

[0007] Artificial neural networks or “neural nets” are parallel information processing tools in which individual processing elements called neurons are arrayed in layers and furnished with a large number of interconnections between elements in successive layers. The functioning of the processing elements are modeled to approximate biologic neurons where the output of the processing element is determined by a typically non-linear transfer function. In a typical model for neural networks, the processing elements are arranged into an input layer for elements which receive inputs, an output layer containing one or more elements which generate an output, and one or more hidden layers of elements therebetween. The hidden layers provide the means by which non-linear problems may be solved. Within a processing element, the input signals to the element are weighted arithmetically according to a weight coefficient associated with each input. The resulting weighted sum is transformed by a selected non-linear transfer function, such as a sigmoid function, to produce an output, whose values range from 0 to 1, for each processing element. The learning process, called “training”, is a trial-and-error process involving a series of iterative adjustments to the processing element weights so that a particular processing element provides an output which, when combined with the outputs of other processing elements, generates a result which minimizes the resulting error between the outputs of the neural network and the desired outputs as represented in the training data. Adjustment of the element weights are triggered by error signals. Training data are described as a number of training examples in which each example contains a set of input values to be presented to the neural network and an associated set of desired output values.

[0008] A common training method is backpropagation or “backprop”, in which error signals are propagated backwards through the network. The error signal is used to determine how much any given element's weight is to be changed and the error gradient, with the goal being to converge to a global minimum of the mean squared error. The path toward convergence, i.e., the gradient descent, is taken in steps, each step being an adjustment of the input weights of the processing element. The size of each step is determined by the learning rate. The slope of the gradient descent includes flat and steep regions with valleys that act as local minima, giving the false impression that convergence has been achieved, leading to an inaccurate result.

[0009] Some variants of backprop incorporate a momentum term in which a proportion of the previous weight-change value is added to the current value. This adds momentum to the algorithm's trajectory in its gradient descent, which may prevent it from becoming “trapped” in local minima. One backpropogation method which includes a momentum term is “Quickprop”, in which the momentum rates are adaptive. The Quickprop variation is described by Fahlman (see,“Fast Learning Variations on Back-Propagation: An Empirical Study”, Proceedings on the 1988 Connectionist Models Summer School, Pittsburgh, 1988, D. Touretzky, et al., eds., pp. 38-51, Morgan Kaufmann, San Mateo, Calif.; and, with Lebriere, “The Cascade-Correlation Learning Architecture”, Advances in Neural Information Processing Systems 2, (Denver, 1989), D. Touretzky, ed., pp. 524-32. Morgan Kaufmann, San Mateo, Calif.). The Quickprop algorithm is publicly accessible, and may be downloaded via the Internet, from the Artificial Intelligence Repository maintained by the School of Computer Science at Carnegie Mellon University. In Quickprop, a dynamic momentum rate is calculated based upon the slope of the gradient. If the slope is smaller but has the same sign as the slope following the immediately preceding weight adjustment, the weight change will accelerate. The acceleration rate is determined by the magnitude of successive differences between slope values. If the current slope is in the opposite direction from the previous slope, the weight change decelerates. The Quickprop method improves convergence speed, giving the steepest possible gradient descent, helping to prevent convergence to a local minimum.

[0010] When neural networks are trained on sufficient training data, the neural network acts as an associative memory that is able to generalize to a correct solution for sets of new input data that were not part of the training data. Neural networks have been shown to be able to operate even in the absence of complete data or in the presence of noise. It has also been observed that the performance of the network on new or test data tends to be lower than the performance on training data. The difference in the performance on test data indicates the extent to which the network was able to generalize from the training data. A neural network, however, can be retrained and thus learn from the new data, improving the overall performance of the network.

[0011] Neural nets, thus, have characteristics that make them well suited for a large number of different problems, including areas involving prediction, such as medical diagnosis.

Neural Nets and Diagnosis

[0012] In diagnosing and/or treating a patient, a physician will use patient condition, symptoms, and the results of applicable medical diagnostic tests to identify the disease state or condition of the patient. The physician must carefully determine the relevance of the symptoms and test results to the particular diagnosis and use judgement based on experience and intuition in making a particular diagnosis. Medical diagnosis involves integration of information from several sources including a medical history, a physical exam and biochemical tests. Based upon the results of the exam and tests and answers to the questions, the physician, using his or her training, experience and knowledge and expertise, formulates a diagnosis. A final diagnosis may require subsequent surgical procedures to verify or to formulate. Thus, the process of diagnosis involves a combination of decision-support, intuition and experience. The validity of a physician's diagnosis is very dependent upon his/her experience and ability.

[0013] Because of the predictive and intuitive nature of medical diagnosis, attempts have been made to develop neural networks and other expert systems that aid in this process. The application of neural networks to medical diagnosis has been reported. For example, neural networks have been used to aid in the diagnosis of cardiovascular disorders (see, e.g., Baxt (1991) “Use of an Artificial Neural Network for the Diagnosis of Myocardial Infarction,” Annals of Internal Medicine 115:843; Baxt (1992) “Improving the Accuracy of an Artificial Neural Network Using Multiple Differently Trained Networks,” Neural Computation 4:772; Baxt (1992), “Analysis of the clinical variables that drive decision in an artificial neural network trained to identify the presence of myocardial infarction,” Annals of Emergency Medicine 21:1439; and Baxt (1994) “Complexity, chaos and human physiology: the justification for non-linear neural computational analysis,” Cancer Letters 77:85). Other medical diagnostic applications include the use of neural networks for cancer diagnosis (see, e.g., Maclin, et al. (19910 “Using Neural Networks to Diagnose Cancer” Journal of Medical Systems 15:11-9; Rogers, et al. (1994) “Artificial Neural Networks for Early Detection and Diagnosis of Cancer” Cancer Letters 77:79-83; Wilding, et al. (1994) “Application of Backpropogation Neural Networks to Diagnosis of Breast and Ovarian Cancer” Cancer Letters 77:145-53), neuromuscular disorders (Pattichis, et al. (1995) “Neural Network Models in EMG Diagnosis”, IEEE Transactions on Biomedical Engineering 42:5:486-495), and chronic fatigue syndrome (Solms, et al. (1996) “A Neural Network Diagnostic Tool for the Chronic Fatigue Syndrome”, International Conference on Neural Networks, Paper No. 108). These methodologies, however, fail to address significant issues relating to the development of practical diagnostic tests for a wide range of conditions and does not address the selection of input variables.

[0014] Computerized decision-support methods other than neural networks have been reported for their applications in medical diagnostics, including knowledge-based expert systems, including MYCIN (Davis, et al., “Production Systems as a Representation for a Knowledge-based Consultation Program”, Artificial Intelligence, 1977; 8: 1: 15-45) and its progeny TEIRESIAS, EMYCIN, PUFF, CENTAUR, VM, GUIDON, SACON, ONCOCIN and ROGET. MYCIN is an interactive program that diagnoses certain infectious diseases and prescribes anti-microbial therapy. Such knowledge-based systems contain factual knowledge and rules or other methods for using that knowledge, with all of the information and rules being pre-programmed into the system's memory rather than the system developing its own procedure for reaching the desired result based upon input data, as in neural networks. Another computerized diagnosis method is the Bayesian network, also known as a belief or causal probabilistic network, which classifies patterns based on probability density functions from training patterns and a priori information. Bayesian decision systems are reported for uses in interpretation of mammograms for diagnosing breast cancer (Roberts, et al., “MammoNet: A Bayesian Network diagnosing Breast Cancer”, Midwest Artificial Intelligence and Cognitive Science Society Conference, Carbondale, Ill., April 1995) and hypertension (Blinowska, et al. (1993) “Diagnostica—A Bayesian Decision-Aid System—Applied to Hypertension Diagnosis”, IEEE Transactions on Biomedical Engineering 40:230-35) Bayesian decision systems are somewhat limited in their reliance on linear relationships and in the number of input data points that can be handled, and may not be as well suited for decision-support involving non-linear relationships between variables. Implementation of Bayesian methods using the processing elements of a neural network can overcome some of these limitations (see, e.g., Penny, et al. (1996) In “Neural Networks in Clinical Medicine”, Medical Decision-support, 1996; 16:4: 386-98). These methods have been used, by mimicking the physician, to diagnose disorders in which important variables are input into the system. It, however, would be of interest to use these systems to improve upon existing diagnostic procedures.

Endometriosis

[0015] Endometriosis is the growth of uterine-like tissue outside of the uterus. It affects about 15-30 percent of reproductive age women. The cause(s) of endometriosis are not known, but it may result from retrograde menstruation, the reflux of endometrial tissue and cells (menstrual debris) from the uterus into the peritoneal cavity. While retrograde menstruation is thought to occur in most or all women, it is unclear why some women develop endometriosis and others do not.

[0016] Not all women with endometriosis exhibit symptoms or suffer from the disease. The extent or severity of endometriosis does not correlate with symptoms. Some women with severe disease may be completely asymptomatic, whereas others with minimal disease may suffer from excruciating pain. Symptoms, such as infertility, pelvic pain, dysmenorrhea and past occurrence of endometriosis, that have been associated with endometriosis often occur in women who do not have endometriosis. In other instances, these symptoms may be present, and the women do have endometriosis. Although an association between these symptoms and endometriosis appears to exist, the correlation is far from perfect, the interplay with these and other factors are complex. Clinicians often perform diagnostic laparoscopies on patients whom they believe are excellent candidates for having endometriosis based a combination of the above indications. Endometriosis, however, is not present in a significant proportion of these women. Thus, endometriosis represents an example of a disease state in which a physician must draw upon experience using a complex set of information to formulate a diagnosis. The validity of the diagnosis is related to the experience and ability of the physician.

[0017] As a result, determining if a woman has endometriosis from symptoms alone has not been possible. Within the medical community, the diagnosis of endometriosis is confirmed only by direct visualization of endometrial lesions during surgery. Many physicians often impose a further restriction and demand that the suspected lesions be verified as being endometrial-like (glands and stroma) using histology on endometrial biopsied tissue. Thus, a non-invasive diagnostic test for endometriosis would be of significant benefit.

[0018] Therefore, it is an object herein to provide a non-invasive diagnostic aid for endometriosis. It is also an object herein to provide methods to select important variables to be used in decision-support systems to aid in diagnosis of endometriosis and other disorders and conditions. It is also an object herein to identify new variables, identify new biochemical tests and markers for diseases and to design to new diagnostic tests that improve upon existing diagnostic methodologies.

SUMMARY OF THE INVENTION

[0019] Methods using decision-support systems for the diagnosis of and for aiding in the diagnosis of diseases, disorders and other medical conditions are provided. The methods provided herein, include a method of using patient history data and identification of important variables to develop a diagnostic test; a method for identification of important selected variables; a method of designing a diagnostic test; a method of evaluating the usefulness of diagnostic test; a method of expanding clinical utility of diagnostic test, and a method of selecting a course of treatment by predicting the outcome of various possible treatments. Also provided are disease parameters or variables to aid in the diagnosis of disorders, including any disorders that are difficult to diagnose, such as endometriosis, predicting pregnancy related events, such as the likelihood of delivery within a particular time period, and other such disorders relevant to women's health. It is understood that although women's disorders are exemplified herein, the methods herein are applicable to any disorder or condition.

[0020] Also provided are means to use neural network training to guide the development of the tests to improve their sensitivity and specificity, and to select diagnostic tests that improve overall diagnosis of, or potential for, a disease state or medical condition. Finally, a method for evaluating the effectiveness of any given diagnostic test is described.

[0021] Thus, provided herein is a method for identifying variables or sets of variables that aid in the diagnosis of disorders or conditions. In the methods for identifying and selection of important variables and generating systems for diagnosis, patient data or information, typically patient history or clinical data are collected and variables based on this data are identified. For example, the data includes information for each patient regarding the number of pregnancies each patient has had. The extracted variable is, thus, number of pregnancies. The variables are analyzed by the decision-support systems, exemplified by neural networks, to identify important or relevant variables.

[0022] Methods are provided for developing medical diagnostic tests using computer-based decision-support systems, such as neural networks and other adaptive processing systems (collectively, “data mining tools”). The neural networks or other such systems are trained on the patient data and observations collected from a group of test patients in whom the condition is known or suspected; a subset or subsets of relevant variables are identified through the use of a decision-support system or systems, such as a neural network or a consensus of neural networks; and another set of decision-support systems is trained on the identified subset(s) to produce a consensus decision-support system based test, such as a neural net-based test for the condition. The use of consensus systems, such as consensus neural networks, minimizes the negative effects of local minima in decision-support systems, such as neural network-based systems, thereby improving the accuracy of the system.

[0023] Also, to refine or improve performance, the patient data can be augmented by increasing the number of patients used. Also biochemical test data and other data may be included as part of additional examples or by using the data as additional variables prior to the variable selection process.

[0024] The resulting systems are used as an aid in diagnosis. In addition, as the systems are used patient data can be stored and then used to further train the systems and to develop systems that are adapted for a particular genetic population. This inputting of additional data into the system may be implemented automatically or done manually. By doing so the systems continually learn and adapt to the particular environment in which they are used. The resulting systems have numerous uses in addition to diagnosis, which includes assessing the severity of a disease or disorder, predicting the outcome of a selected treatment protocol. The systems may also be used to assess the value of other data in a diagnostic procedure, such as biochemical test data and other such data, and to identify new tests that are useful for diagnosing a particular disease.

[0025] Thus, also provided are methods for improving upon existing biochemical tests, identifying relevant biochemical tests and for developing new biochemical tests to aid in diagnosis of disorders and conditions. These methods involve assessing the effect of a particular test or a potential new test on the performance of the decision-support system based test. If addition of information from the test improves performance, such test will have relevance in diagnosis.

[0026] The disorders and conditions that are of particular interest herein and to which the methods herein may be readily applied, are gynecological conditions and other conditions that impact on fertility, including but not limited to endometriosis, infertility, prediction of pregnancy-related events, such as the likelihood of delivery within a particular time period, and pre-eclampsia. It is understood, however, that the methods herein are applicable to any disorder or condition.

[0027] The methods are exemplified with reference to neural networks, however, it is understood that other data mining tools, such as expert systems, fuzzy logic, decision trees, and other statistical decision-support systems which are generally non-linear, may be used. Although the variables provided herein are intended to be used with decision-support systems, once the variables are identified, then a person, typically a physician, armed with knowledge the important variables can use them to aid in diagnosis in the absence of a decision-support system or using a less complex linear system of analysis.

[0028] As shown herein, variables or combinations thereof that heretofore were not known to be important in aiding in diagnosis are identified. In addition, patient history data, without supplementing biochemical test data, can be used to diagnose or aid in diagnosing a disorder or condition when used with the decision-support systems, such as the neural nets provided herein. Furthermore, the accuracy of the diagnosis with or without biochemical data may be sufficient to obviate the need for invasive surgical diagnostic procedures.

[0029] Also provided herein is a method of identifying and expanding clinical utility of diagnostic test. The results of a particular test, particular one that had heretofore not been considered of clinical utility with respect to the disorder or condition of interest, are combined with the variables and used with the decision-support system, such as a neural net. If the performance, the ability to correctly diagnose a disorder, of the system is improved by addition of the results of the test, then the test will have clinical utility or a new utility.

[0030] Similarly, the resulting systems can be used to identify new utilities for drugs or therapies and also to identify uses for particular drugs and therapies. For example, the systems can be used to select subpopulations of patients for whom a particular drug or therapy is effective. Thus, methods for expanding the indication for a drug or therapy and identifying new drugs and therapies are provided.

[0031] In specific embodiments, neural networks are employed to evaluate specific observation values and test results, to guide the development of biochemical or other diagnostic tests, and to provide the decision-support functionality for the test.

[0032] A method for identification of important variables (parameters) or sets thereof for use in the decision-support systems is also provided. This method, while exemplified herein with reference to medical diagnosis, has broad applicability in any field, such as financial analysis, in which important parameters or variables are selected from among a plurality.

[0033] In particular, a method for selecting effective combinations of variables is provided. The method involves: (1) providing a set of “n” candidate variables and a set of “selected important variables”, which initially is empty; (2) ranking all candidate variables based on a chi square and sensitivity analysis; (3) taking the highest “m” ranked variables one at a time, where m is from 1 up to n, and evaluating each by training a consensus of neural nets on that variable combined with the current set of important variables; (4) selecting the best of the m variables, where the best variable is the one that gives the highest performance, and if it improves performance in comparison to the performance of the selected important variables, adding it to the “selected important variable” set, removing it from the candidate set and continuing processing at step (3), otherwise going to step (5); (5) if all variables on the candidate set have been evaluated, the process is complete, otherwise continue taking the next highest “m” ranked variables one at a time, and evaluating each by training a consensus of neural nets on that variable combined with the current set of important selected variables and performing step (4). The final set of important selected variables will contain a plurality, typically more than three to five or more variables.

[0034] In a particular embodiment, the sensitivity analysis involves: (k) determining an average observation value for each of the variables in an observation data set; (l) selecting a training example, and running the example through a decision-support system to produce an output value, designated and stored as the normal output; (m) selecting a first variable in the selected training example, replacing the observation value with the average observation value of the first variable; running the modified example in the decision-support system in the forward mode and recording the output as the modified output; (n) squaring the difference between the normal output and the modified output and accumulating it as a total for each variable, in which this total is designed the selected variable total for each variable; (o) repeat steps (m) and (n) for each variable in the example; (p) repeating steps (l)-(n) for each example in the data set, where each total for the selected variable represents the relative contribution of each variable to the determination of the decision-support system output. This total will be used to rank each variable according to its relative contribution to the determination of the decision-support system output.

[0035] As shown herein, computer-based decision-support systems such as neural networks reveal that certain input factors, which were not initially considered to be important, can influence an outcome. This ability of a neural network to reveal the relevant input factors permits its use in guiding the design of diagnostic tests. Thus a method of designing a diagnostic test, and a method of evaluating utility of diagnostic test are also provided. In each instance, the data from the test or possible test is added to the input of the decision-support system. If the results are improved when the data are included in the input, then the diagnostic test may have clinical utility. In this manner, tests that heretofore were not known to be of value in diagnosis of a particular disorder are identified, or new tests can be developed. Neural networks can add robustness to diagnostic tests by discounting the effects of spurious data points and by identifying other data points that might be substituted, if any.

[0036] Networks are trained on one set of variables and then clinical data from diagnostic or biochemical test data and/or additional patient information are added to the input data. Any variable that improves the results compared to their absence is (are) selected. As a result, particular tests that heretofore were of unknown value in diagnosing a particular disorder can be shown to have relevance. For example, the presence or absence of particular spots on a western blot of serum antibodies can be correlated with a disease state. Based on the identity of particular spots (i.e., antigens) new diagnostic tests can be developed.

[0037] An example of the application of the prediction technology to aid in the diagnosis of disease and more particularly the use of neural network techniques with inputs from various information sources to aid in the diagnosis of the disease endometriosis is provided. A trained set of neural networks operative according to a consensus of networks in a computer system is employed to evaluate specific clinical associations, for example obtained by survey, some of which may not generally be associated with a disease condition. This is demonstrated with an exemplary disease condition endometriosis, and factors used to aid in the diagnosis of endometriosis are provided. The neural network training is based on correlations between answers to questions furnished by physicians of a significant number of clinical patients whose disease condition has been surgically verified, herein termed clinical data.

[0038] A plurality of factors, twelve to about sixteen, particularly a set of fourteen factors, in a specific trained neural network extracted from a collection of over forty clinical data factors have been identified as primary indicia for endometriosis. The following set of parameters: age, parity (number of births), gravidity (number of pregnancies), number abortions, smoking (packs/day), past history of endometriosis, dysmenorrhea, pelvic pain, abnormal pap/dysplasia, history pelvic surgery, medication history, pregnancy hypertension, genital warts and diabetes were identified as being significant. Other similar sets of parameters were also identified. Subsets of these variables also may be employed in diagnosing endometriosis.

[0039] In particular, any subset of the selected set of parameters, particularly the set of fourteen variables, that contain one (or more) of the following combinations of three variables can be used with a decision-support system for diagnosis of endometriosis:

[0040] a) number of births, history of endometriosis, history of pelvic surgery;

[0041] b) diabetes, pregnancy hypertension, smoking;

[0042] c) pregnancy hypertension, abnormal pap smear/dysplasia, history of endometriosis;

[0043] d) age, smoking, history of endometriosis;

[0044] e) smoking, history of endometriosis, dysmenorrhea;

[0045] f) age, diabetes, history of endometriosis;

[0046] g) pregnancy hypertension, number of births, history of endometriosis;

[0047] h) Smoking, number of births, history of endometriosis;

[0048] i) pregnancy hypertension, history endometriosis, history of pelvic surgery;

[0049] j) number of pregnancies, history of endometriosis, history of pelvic surgery;

[0050] k) number of births, abnormal PAP smear/dysplasia, history of endometriosis;

[0051] l) number of births, abnormal PAP smear/dysplasia, dysmenorrhea;

[0052] m) history of endometriosis, history of pelvic surgery, dysmenorrhea; and

[0053] n) number of pregnancies, history of endometriosis, dysmenorrhea.

[0054] Diagnostic software and exemplary neural networks that use the variables for diagnosis of endometriosis and the risk of delivery before a specified time are also provided. Software generates a clinically useful endometriosis index is provided as software that generates an index for assessing the risk are provided.

[0055] In other embodiments, the performance of a diagnostic neural network system used to test for endometriosis is enhanced by including variables based on biochemical test results from a relevant biochemical test as part of the factors (herein termed biochemical test data, which includes tests from analyses and data such as vital signs, such as pulse rate and blood pressure) used for training the network. An exemplary network that results therefrom is an augmented neural network that employs fifteen input factors, including results of the biochemical test and the fourteen clinical parameters. The set of weights of the eight augmented neural networks differ from the set of weights of the eight clinical data neural networks. The exemplified biochemical test employs an immuno-diagnostic test format, such as the ELISA diagnostic test format.

[0056] The methodology applied to endometriosis as exemplified herein can be similarly applied and used to identify factors for other disorders, including, but not limited to gynecological disorders and female-associated disorders, such as, for example, infertility, prediction of pregnancy related events, such as the likelihood of delivery within a particular time period, and pre-eclampsia. Neural networks, thus, can be trained to predict the disease state based on the identification of factors important in predicting the disease state and combining them with biochemical data.

[0057] The resulting diagnostic systems may be adapted and used not only for diagnosing the presence of a condition or disorder, but also the severity of the disorder and as an aid in selecting a course of treatment.

BRIEF DESCRIPTION OF THE DRAWINGS

[0058]FIG. 1 is a flow chart for developing a patient-history-based diagnostic test process;

[0059]FIG. 2 is a flow chart for developing a biochemical diagnostic test;

[0060] FIGS. 3A-B provide a flow chart of the process for isolating important variables;

[0061]FIG. 4 is a flow chart on the process of training one or a set of neural networks involving a partitioning of variables;

[0062]FIG. 5 is a flow chart for developing a biochemical diagnostic test;

[0063]FIG. 6 is a flow chart for determining the effectiveness of a biochemical diagnostic test;

[0064]FIG. 7 is a schematic diagram of a neural network trained on clinical data of the form used for the consensus network of a plurality of neural networks;

[0065]FIG. 8 is a schematic diagram of a second embodiment of a neural network trained on clinical data augmented by test results data of the form used for the consensus of eight neural networks;

[0066]FIG. 9 is a schematic diagram of a processing element at each node of the neural network;

[0067]FIG. 10 is a schematic diagram of a consensus network of eight neural networks using either the first or second embodiment of the neural network;

[0068]FIG. 11 is a depiction of an exemplary interface screen of the user interface in the diagnostic endometriosis index;

[0069]FIG. 12 depicts an exemplary screen showing main menu, tool bar and results display in the user interface using the software (Appendix III) for assessing preterm delivery;

[0070]FIG. 13 depicts an exemplary Edit Record dialog box in preterm delivery software;

[0071]FIG. 14 depicts an exemplary Go To dialog box in the software;

[0072]FIG. 15 depicts an exemplary Help About dialog box in the software;

[0073]FIGS. 16A and 16B shows exemplary outputs from the software, FIG. 16B includes the input data as well;

[0074]FIG. 17 is a schematic diagram of a neural network (EGA6) trained on clinical data of the form used for the consensus network of a plurality of neural networks; and

[0075]FIG. 18 is a schematic diagram of a neural network, such as EGAD7 f and EGAD14 f, trained on clinical data of the form used for the consensus network of a plurality of neural networks.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Definitions

[0076] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as is commonly understood by one of skill in the art to which this invention belongs. All patents and publications referred to herein are incorporated by reference.

[0077] As used herein, a decision-support system, also referred to as a “data mining system” or a “knowledge discovery in data system”, is any system, typically a computer-based system, that can be trained on data to classify the input data and then subsequently used with new input data to make decisions based on the training data. These systems include, but are not limited, expert systems, fuzzy logic, non-linear regression analysis, multivariate analysis, decision tree classifiers, Bayesian belief networks and, as exemplified herein, neural networks.

[0078] As used herein, an adaptive machine learning process refers to any system whereby data are used to generate a predictive solution. Such processes include those effected by expert systems, neural networks, and fuzzy logic.

[0079] As used herein, expert system is a computer-based problem solving and decision-support system based on knowledge of its task and logical rules or procedures for using the knowledge. Both the knowledge and the logic are entered into the computer from the experience of human specialists in the area of expertise.

[0080] As used herein, a neural network, or neural net, is a parallel computational model comprised of densely interconnected adaptive processing elements. In the neural network, the processing elements are configured into an input layer, an output layer and at least one hidden layer. Suitable neural networks are known to those of skill in this art (see, e.g., U.S. Pat. Nos. 5,251,626; 5,473,537; and 5,331,550, Baxt (1991) “Use of an Artificial Neural Network for the Diagnosis of Myocardial Infarction,” Annals of Internal Medicine 115:843; Baxt (1992) “Improving the Accuracy of an Artificial Neural Network Using Multiple Differently Trained Networks,” Neural Computation 4:772; Baxt (1992) “Analysis of the clinical variables that drive decision in an artificial neural network trained to identify the presence of myocardial infarction,” Annals of Emergency Medicine 21:1439; and Baxt (1994) “Complexity, chaos and human physiology: the justification for non-linear neural computational analysis,” Cancer Letters 77:85).

[0081] As used herein, a processing element, which may also be known as a perceptron or an artificial neuron, is a computational unit which maps input data from a plurality of inputs into a single binary output in accordance with a transfer function. Each processing element has an input weight corresponding to each input which is multiplied with the signal received at that input to produce a weighted input value. The processing element sums the weighted inputs values of each of the inputs to generate a weighted sum which is then compared to the threshold defined by the transfer function.

[0082] As used herein, transfer function, also known as a threshold function or an activation function, is a mathematical function which creates a curve defining two distinct categories. Transfer functions may be linear, but, as used in neural networks, are more typically non-linear, including quadratic, polynomial, or sigmoid functions.

[0083] As used herein, backpropogation, also known as backprop, is a training method for neural networks for correcting errors between the target output and the actual output. The error signal is fed back through the processing layer of the neural network, causing changes in the weights of the processing elements to bring the actual output closer to the target output.

[0084] As used herein, Quickprop is a backpropogation method that was proposed, developed and reported by Fahiman (“Fast Learning Variations on Back-Propagation: An Empirical Study”, Proceedings on the 1988 Connectionist Models Summer School, Pittsburgh, 1988, D. Touretzky, et al., eds., pp.38-51, Morgan Kaufmann, San Mateo, Calif.; and, with Lebriere, “The Cascade-Correlation Learning Architecture”, Advances in Neural Information Processing Systems 2,(Denver, 1989), D. Touretzky, ed., pp. 524-32. Morgan Kaufmann, San Mateo, Calif.).

[0085] As used herein, diagnosis refers to a predictive process in which the presence, absence, severity or course of treatment of a disease, disorder or other medical condition is assessed. For purposes herein, diagnosis will also include predictive processes for determining the outcome resulting from a treatment.

[0086] As used herein, a patient or subject includes any mammals for whom diagnosis is contemplated. Humans are the preferred subjects.

[0087] As used herein, biochemical test data refers to the results of any analytical methods, which include, but are not limited to: immunoassays, bioassays, chromatography, data from monitors, and imagers; measurements and also includes data related to vital signs and body function, such as pulse rate, temperature, blood pressure, the results of, for example, EKG, ECG and EEG, biorhythm monitors and other such information. The analysis can assess for example, analytes, serum markers, antibodies, and other such material obtained from the patient through a sample.

[0088] As used herein, patient historical data refers to data obtained from a patient, such as by questionnaire format, but typically does not include biochemical test data as used herein, except to the extent such data is historical, a desired solution is one that generates a number or result whereby a diagnosis of a disorder can be generated.

[0089] As used herein, wherein a training example includes the observation data for a single diagnosis, typically the observation data related to one patient.

[0090] As used herein, the parameters identified from patient historical data are herein termed observation factors or values or variables. For example, patient data will include information with respect to individual patient's smoking habits. The variable associated with that will be smoking.

[0091] As used herein, partition means to select a portion of the data, such as 80%, and use it for training a neural net and to use the remaining portion as test data. Thus, the network is trained on all but one portion of the data. The process can then be repeated and a second network trained. The process is repeated until all partitions are used as used as test data and training data.

[0092] As used herein, the method of training by partitioning the available data into a plurality of subsets is generally referred to as the “holdout method” of training. The holdout method is particularly useful when the data available for network training is limited.

[0093] As used herein, training refers to the process in which input data are used to generate a decision-support system. In particularly, with reference to neural nets, training is a trial-and-error process involving a series of iterative adjustments to the processing element weights so that a particular processing element provides an output which, when combined with the outputs of other processing elements, generates a result which minimizes the resulting error between the outputs of the neural network and the desired outputs as represented in the training data.

[0094] As used herein, a variable selection process is a systematic method whereby combinations of variables that yield predictive results are selected from any available set. Selection is effected by maximizing predictive performance of subsets such that addition of additional variables does not improve the result. The preferred methods provided herein advantageously permit selection of variables without considering all possible combinations.

[0095] As used herein, a candidate variable is a selected item from collected observations from a group of test patients for the diagnostic embodiments or other records, such as financial records, that can be used with the decision-support system. Candidate variables will be obtained by collecting data, such as patient data, and categorizing the observations as a set of variables.

[0096] As used herein, important selected variables refer to variables that enhance the network performance of the task at hand. Inclusion of all available variables does not result in the optimal neural network; some variables, when included in network training, lower the network performance. Networks that are trained only with relevant parameters result in increased network performance. These variables are also referred to herein as a subset of relevant variables.

[0097] As used herein, ranking refers to a process in which variables are listed in an order for selection. Ranking may be arbitrary or, preferably, is ordered. Ordering may be effected, for example, by a statistical analysis that ranks the variables in order of importance with respect to the task, such as diagnosis, or by a decision-support system based analysis. Ranking may also be effected, for example, by human experts, by rule based systems, or any combination of any of these methods.

[0098] As used herein, a consensus of neural networks refers to the linear combination of outputs from a plurality of neural networks where the weight on each is outputs is determined arbitrarily or set to an equal value.

[0099] As used herein, a greedy algorithm is a method for optimizing a data set by determining whether to include or exclude a point from a given data set. The set begins with no elements and sequentially selects an element from the feasible set of remaining elements by myopic optimization, in which, given any partial solution, another value that improves the object the most is selected.

[0100] As used herein, a genetic algorithm is a method that begins with an initial population of randomly generated neural networks which are run through a training cycle and ranked according to their performance in reaching the desired target. The poor-performing networks are removed from the population, with the fitter networks being retained and selected for the crossover process to offspring that retain the desirable characteristics of the parent networks.

[0101] As used herein, performance of a system is said to be improved or higher when the results more accurately predict or determine a particular outcome. It is also to be understood that the performance of a system will typically be better as more training examples are used. Thus, the systems herein will improve over time as they are used and more patient data is accumulated and then added to the systems as training data.

[0102] As used herein, sensitivity=TP/(TP+FN); specificity is TN/(TN+FP), where TP=true positives; TN=true negatives; FP=false positives; and FN=false negative. Clinical sensitivity measures how well a test detects patients with the disease; clinical specificity measures how well a test correctly identifies those patients who do not have the disease.

[0103] As used herein, positive predictive value (PPV) is TP/(TP+FP); and negative predictive value (NPV) is TN/(TN+FN). Positive predictive value is the likelihood that a patient with a positive test actually has the disease, and negative predictive value is the likelihood that a patient with a negative test result does not have the disease.

[0104] As used herein, fuzzy logic is an approach to deal with systems that cannot be described precisely. Membership functions (membership in a data set) are not binary in fuzzy logic systems; instead membership function may take on fractional values. Therefore, an element can be simultaneously contained in two contradictory sets, albeit with different coefficients of set membership. Thus, this type of approach is useful for answering questions in which there is no yes or answer. Thus, this type of logic is suitable for categorizing responses from patient historical questionnaires, in which the answer is often one of degree.

[0105] 1. General Considerations and General Methodology

[0106] It has been determined that a number of techniques can be used to train neural networks for analyzing observation values such as patient history and/or biochemical information. Depending upon the characteristics of the available data and the problem to be analyzed, different neural network training techniques can be used. For example, where large amounts of training inputs are available, methodology may be adopted to eliminate redundant training information.

[0107] As shown herein, neural networks may also reveal that certain input factors that were not initially considered to be important can influence an outcome, as well as reveal that presumably important factors are not outcome determinative. The ability of neural networks to reveal the relevant and irrelevant input factors permit their use in guiding the design of a diagnostic test. As shown herein, neural networks, and other such data mining tools, are a valuable advance in diagnostics, providing an opportunity to increase the sensitivity and specificity of a diagnostic test. As shown herein, care must be taken to avoid the potential of poor-accuracy answer due to the phenomenon of local minima. The methods herein provide a means to avoid this problem or at least minimize it.

[0108] In developing the developing diagnostic procedures, and in particular diagnostic tests that are based solely or in part on patient information, a number of problems have been solved. For example, there is generally a limited amount of data because there is a limited number of patients where training data are available. To solve this, as described below, the patient information is partitioned when training the network. Also, there is generally a large number of input observation factors available for use in connection with the available data, so methods for ranking and selecting observations were developed.

[0109] Also, there are generally large number of binary (true/false) input factors in the available patient data, but these factors are generally sparse in nature (values that are positive or negative in only a small percentage of cases of the binary input factors in the available patient data). Also there is a high degree of overlap between the positive and negative factors of the condition being diagnosed.

[0110] These characteristics and others impact the choice of procedures and methods used to develop a diagnostic test. These problems are addressed and solved herein.

[0111] 2. Development of Patient History Diagnostic Test

Diagnostic Test

[0112] Methods for diagnosis based solely on patient history data are provided. As demonstrated herein, it is possible to provide decision-support system that rely only on patient history information but that aid in diagnosis. Consequently, the resulting systems can then be used to improve the predictive ability of biochemical test data, to identify new disease markers, to develop biochemical tests, to identify tests that heretofore were not thought to be predictive of a particular disorder.

[0113] The methods may also be used to select an appropriate course of treatment by predicting the result of selected course of treatment and to predict status following therapy. The input variables for training would be derived from, for example, electronic patient records, that indicate diagnoses and other available data, including selected treatments and outcomes. The resulting decision-support system would then be used with all available data to, for example, categorize women into different classes that will respond to different treatments and predict the outcome of a particular treatment. This permits selection of a treatment or protocol most likely to be successful.

[0114] Similarly, the systems can be used to identify new utilities for drugs or therapies and also to identify uses for particular drugs and therapies. For example, the systems can be used to select subpopulations of patients for whom a particular drug or therapy is effective. Thus, methods for expanding the indication for a drug or therapy and identifying new drugs and therapies are provided.

Collection of Patient Data, Generation of Variables and Overview

[0115] To exemplify the methods herein, FIG. 1 sets forth a flow chart for developing a patient-history-based diagnostic test process. The process begins with collection of patient history data (Step A). Patient history data or observation values are obtained from patient questionnaires, clinical results, in some instances diagnostic test results, and patient medical records and supplied in computer-readable form to a system operating on a computer. In the digital computer, the patient history data are categorized into a set of variables of two forms: binary (such as true/false) values and quantitative (continuous) values. A binary-valued variable might include the answer to the question, “Do you smoke?” A quantitative-valued variable might be the answer to the question, “How many packs per day do you smoke?” Other values, such as membership functions, may also be useful as input vehicles.

[0116] The patient history data will also include a target or desired outcome variable that would be assumed to be indicative of the presence, absence, or severity of the medical condition to be diagnosed. This desired outcome information is useful for neural network training. The selection of data to be included in the training data can be made with the knowledge or assumption of the presence, severity, or absence of the medical condition to be diagnosed. As noted herein, diagnosis may also include assessment of the progress and/or effectiveness of a therapeutic treatment.

[0117] The number of variables, which can be defined and thus generated, can be unwieldy. Binary variables are typically sparse in that the number of positive (or negative) responses is often a small percentage of the overall number of responses. Thus, in instances in which there is a large number of variables and a small number of patient cases available in a typical training data environment, steps are taken to isolate from the available variables a subset of variables important to the diagnosis (Step B). The specific choice of the subset of variables from among the available variables will affect the diagnostic performance of the neural network.

[0118] The process outlined herein has been found to produce a subset of variables which is comparable or superior in sensitivity and reliability to the subset of variables typically chosen by a trained human expert, such as a physician. In some instances, the variables are prioritized or placed in order of rank or relevance.

[0119] Thereafter, the final neural networks to be used in the diagnostic procedure are trained (Step C). In preferred embodiments, a consensus (i.e. a plurality) of networks are trained. The resulting networks form the decision-support functionality for the completed patient history diagnostic test (Step D).

Method for Isolation of Important Variables

[0120] A method for isolation of important variables is provided herein. The method permits sets of effective variables to be selected without comparing every possible combination of variables. The important variables may be used as the inputs for the decision-support systems.

Isolation of Important or Relevant Variables -Ranking the Variables

[0121] FIGS. 3A-B provide a flow chart of the process for isolating the important or relevant variables (Step E) within a diagnostic test. Such a process is typically conducted using a digital computer system to which potentially relevant information has been provided. This procedure ranks the variables in order of importance using two independent methods, then selects a subset of the available variables from the uppermost of the ranking. As noted above, other ranking methods can be used by those of skill in the art in place of chi square or sensitivity analysis. Also, if x is set to N (the total number of candidate variables), then ranking can be arbitrary.

[0122] The system trains a plurality of neural networks on the available data (Step I), as explained hereinafter, then generates a sensitivity analysis over all trained networks to determine to what extent each input variable was used in the network to perform the diagnosis (Step J). A consensus sensitivity analysis of each input variable is determined by averaging the individual sensitivity analysis results for each of the networks trained. Based upon sensitivity, a ranking order for each of the variables available from the patient history information is determined (Step K).

Ranking the Variables

[0123] In preferred embodiments, the variables are ranked using a statistical analysis, such as a chi square analysis, and/or a decision-support system-based analysis, such as a sensitivity analysis. A sensitivity analysis and chi square analysis are used, in the exemplary embodiment to rank variables. Other statistical methods and/or decision-support system-based, including but not limited to regression analysis, discriminant analysis and other methods known to those of skill in the art, may be used. The ranked variables may be used to train the networks, or, preferably, used in the method of variable selection provided herein.

[0124] The method employs a sensitivity analysis in which each input is varied and the corresponding change in output is measured (see, also, Modai, et al., (1993) “Clinical Decisions for Psychiatric Inpatients and Their Evaluation by Trained Neural Networks”, Methods of Information in Medicine 32:396-99; Wilding et al. (1994) “Application of Backpropogation Neural Networks to Diagnosis of Breast and Ovarian Cancer”, Cancer Letters 77:145-53; Ruck et al. (1990) “Feature Selection in Feed-Forward Neural Networks”, Neural Network Computing 20:40-48; and Utans, et al. (1993) “Selecting Neural Network Architectures Via the Prediction Risk: Application to Corporate Bond Rating Prediction”; Proceedings of the First International Conference on Artificial Intelligence Applications on Wall Street. Washington, D.C., IEEE Computer Society Press. pp. 35-41; Penny et al. (1996) In “Neural Networks in Clinical Medicine”, Medical Decision-support 4:386-398). Such methods, which have heretofore not been used to select important variables, as described herein. For example, sensitivity analysis has bee reported to be used to develop a statistical approach to determine the relationships between the variables, but not for selection of important variables (see, Baxt et al. (1995) “Bootstrapping Confidence Intervals for Clinical Input Variable Effects in a Network Trained to Identify the Presence of Myocardial Infarction,” Neural Computation 7: 624-38). Any such sensitivity analyses may be used as described herein as part of the selection of important variables as an aid to diagnosis.

[0125] Step K, FIG. 3A, provides an outline of the sensitivity analysis. Each network or a plurality of trained neural networks (networks N₁ through N_(n)) is run in the forward mode (no training) for each training example S_(x) (input data group for which true output is known or suspected; there must be at least two training examples), where “x” is the number of training examples. The output of each network N₁-N_(n) for each training example S_(x) is recorded, i.e., stored in memory. A new training example is defined containing the average value for each input variable within all training examples. One at a time, each input variable within each original training example S_(x) is replaced with its corresponding average value V_(1(avg)) through V_(y(avg)), where “y” is the number of variables, and the modified training example S_(x)′ is again executed through the multiple networks to produce a modified output for each network for each variable. The differences between the output from the original training example S_(x) and the modified output for each input variable are the squared and summed (accumulated) to obtain individual sums corresponding to each input variable. To provide an illustration, for example, for 10 separate neural networks N₁-N₁₀ and 5 different training examples S₁-S₅, each having 15 variables V₁-V₁₅, each of the 5 training examples would be run through the 10 networks to produce 50 total outputs. Taking variable V₁ from each of the training examples, an average value V_(1(avg)) is calculated. This averaged variable V_(1(avg)) is substituted into each of the 5 training examples to create modified training examples S₁′-S₅′ and they are again run through the 10 networks. Fifty modified output values are generated by the networks N₁-N₁₀ for the 5 training examples, the modification being the result of using the average value variable V_(1(avg)). The difference between each of the fifty original and modified output values is calculated, i.e., the original output from training S₄ in network N₆: OUT(S₄N₆) is subtracted from the modified output from training example S₄ in network N₆, OUT(S₄′N₆). That difference value is squared [OUT(S₄′N₆)-OUT(S₄N₆)]² _(V1). This value is summed with the squared difference values for all combinations of networks and training examples for the iteration in which variable V₁ was substituted with its average value V_(1(avg)), i.e., $\sum\limits_{x = 1}^{5}{\sum\limits_{n = 1}^{10}{\left\lbrack {{{OUT}\quad \left( {S_{x}^{\prime}N_{n}} \right)} - {{OUT}\quad \left( {S_{x}N_{n}} \right)}} \right\rbrack_{V\quad 1}^{2}.}}$

[0126] Next, the process is repeated for variable #2, finding the differences between the original and modified outputs for each combination of network and training example, squaring, then summing the differences. This process is repeated for each variable until all 15 variables have been completed.

[0127] Each of the resultant sums is then normalized so that if all variables contributed equally to the single resultant output, the normalized value would be 1.0. Following the preceding example, the summed squared differences for each variable are summed to obtain a total summed squared difference for all variables. The value for each variable is divided by the total summed square difference to normalize the contribution from each variable. From this information, the normalized value for each variable can be ranked in order of importance, with higher relative numbers indicating that the corresponding variable has a greater influence on the output. The sensitivity analysis of the input variables is used to indicate which variables played the greatest roles in generating the network output.

[0128] It has been found herein that using consensus networks to perform sensitivity analysis improves the variable selection process. For example, if two variables are highly correlated, a single neural network trained on the data might use only one of the two variables to produce the diagnosis. Since the variables are highly correlated, little is gained by including both, and the choice of which to include is dependent on the initial starting conditions of the network being trained. Sensitivity analysis using a single network might show that only one, or the other, is important. Sensitivity analysis derived from a consensus of multiple networks, each trained using different initial conditions, may reveal that both of the highly correlated variables are important. By averaging the sensitivity analysis over a set of neural networks, a consensus is formed that minimizes the effects of the initial conditions.

Chi-Square Contingency Table

[0129] When dealing with sparse binary data, a positive response on a given variable might be highly correlated to the condition being diagnosed, but occur so infrequently in the training data that the importance of the variable, as indicated by the neural network sensitivity analysis, might be very low. In order to catch these occurrences, the Chi-square contingency table is used as a secondary ranking process. A 2×2 contingency table Chi-square test on the binary variables, where each cell of the table is the observed frequency for the combination of the two variables (FIG. 3A, Step F) is performed. A 2×2 contingency table Chi-square test is performed on the continuous variables using optimal thresholds (which might be empirically-determined) (Step G)>The binary and continuous variables that have been based on Chi-square analysis are ranked (Step H).

[0130] The standard Chi-square 2×2 contingency table operative on the binary variables (Step F) is used to determine the significance of the relationship between a specific binary input variable and the desired output (as determined by comparing the training data with the known single output result). Variables that have a low Chi-square value are typically unrelated to the desired output.

[0131] For variables that have continuous values, a 2×2 contingency table can be constructed (Step G) by comparing the continuous variable to a threshold value. The threshold value is modified experimentally to yield the highest possible Chi-square value.

[0132] The Chi-square values of the continuous variables and of the binary variables can then be combined for common ranking (Step H). A second level of ranking can then be performed that combines the Chi-square-ranked variables with the sensitivity-analysis-ranked variables (Step L). This combining of rankings allows variables that are significantly related to the output but that are sparse (i.e, values that are positive or negative in only a small percentage of cases) to be included in the set of important variables. Otherwise, important information in such a non-linear system could easily be overlooked.

Selection of Important Variables from Among the Ranked Variables

[0133] As noted above, important variables are selected from among the identified variables. Preferably the selection is effected after ranking the variables at which time a second level ranking process is invoked. A method for identification of important variables (parameters) or sets thereof for use in the decision-support systems is also provided. This method, while exemplified herein with reference to medical diagnosis, has broad applicability in any field, such as financial analysis and other endeavors that involve statistically-based prediction, in which important parameters or variables are selected from among a plurality.

[0134] In particular, a method for selecting effective combinations of variables is provided. After (1) providing a set of “n” candidate variables and a set of “selected important variables”, which initially is empty; and (2) ranking all candidate variables based on a chi square and sensitivity analysis, as described above, the method involves: (3) taking the highest “m” ranked variables one at a time, where m is from 1 up to n, and evaluating each by training a consensus of neural nets on that variable combined with the current set of important variables; (4) selecting the best of the m variables, where the best variable is the one that most improves performance, and if it improves performance, adding it to the “selected important variable” set, removing it from the candidate set and continuing processing at step (3) otherwise continuing by going to step (5); (5) if all variables on the candidate set have been evaluated, the process is complete, otherwise continue taking the next highest “m” ranked variables one at a time, and evaluating each by training a consensus of neural nets on that variable combined with the current set of important selected variables and performing step (4).

[0135] In particular, the second level ranking process (Step L) starts by adding the highest ranked variable from the sensitivity analysis (Step K) to the set of important variables (Step H). Alternatively, the second level ranking process could be started with an empty set and then testing the top several (x) variables from each of the two sets of ranking. This second level ranking process uses the network training procedure (Step I) on a currently selected partition or subset of variables from the available data to train a set of neural networks. The ranking process is a network training procedure using the current set of “important” variables (which generally will initially be empty) plus the current variable being ranked or tested for ranking, and uses a greedy algorithm to optimize the set of input variables by myopically optimizing the input set based upon the previously identified important variable(s), to identify the remaining variable(s) which improve the output the most.

[0136] This training process is illustrated in FIG. 4. The number of inputs used by the neural network is controlled by excluding inputs which are found to not contribute significantly to the desired output, i.e., the known target output of the training data. A commercial computer program, such as ThinksPro™ neural networks for Windows™ (or TrainDos™ the DOS version) by Logical Designs Consulting, Inc, La Jolla, Calif., or any other such program that one of skill in the art can develop may be used to vary the inputs and train the networks.

[0137] A number of other commercially available neural network computer programs may be used to perform any of the above operations, including Brainmaker™, which is available from California Scientific Software Co., Nevada Adaptive Solutions, Beaverton, Oreg.; Neural Network Utility/2™, from NeuralWare, Inc., Pittsburgh, Pa.; NeuroShell™ and Neuro-Windows™, from Ward Systems Group, Inc., Frederick, Md. Other types of data mining tools, i.e., decision-support systems, that will provide the function of variable selection and network optimization may be designed or other commercially available systems may be used. For example, NeuroGenetic Optimizer™ from BioComp Systems, Inc., Redmond, Wash; and Neuro Forecaster/GENETICA, from New Wave Intelligent Business Systems (NIB5) Pte Ltd., Republic of Singapore, use genetic algorithms that are modelled on natural selection to eliminate poor-performing nodes within network population while passing on the best performing rates to offspring nodes to “grow” an optimized network and to eliminate input variables which do not contribute significantly to the outcome. Networks based on genetic algorithms use mutation to avoid trapping in local minima and use crossover processes to introduce new structures into the population.

[0138] Knowledge discovery in data (KDD) is another data mining tool, decision-support system, designed to identify significant relationship is that exist among variables, and are useful when there are many possible relationships. A number of KDD systems are commercially available including Darwin™, from Thinking Machines, Bedford, Mass.; Mineset™, from Silicon Graphics, Mountain View, Calif., and Eikoplex™ from Ultragem Data Mining Company, San Francisco, Calif. (Eikoplex™ has been used to provide classification rules for determining the probability of the presence of heart disease.) Others may be developed by those of skill in the art.

[0139] Proceeding with the ranking procedure, if, for example, x is set to 2, then the top two variables from each of the two ranking sets will be tested by the process (FIG. 3A, Steps L, S), and results are checked to see if the test results show improvement (Step T). If there is an improvement, the single best performing variable is added to the set of “important” variables, and then that variable is removed from the two rankings (FIG. 3B, Step U) for further testing (Step S). If there is no improvement, then the process is repeated with the next x variables from each set until an improvement is found or all of the variables from the two sets have been tested. This process is repeated until either the source sets are empty, i.e., all relevant or important variables have been included in the final network, or all of the remaining variables in the sets being tested are found to be below the performance of the current list of important variables. This process of elimination greatly reduces the number of subsets of the available variables which must be tested in order to determine the set of important variables. Even in the worst case, with ten available variables, the process would test only 34 subsets where x=2 and only 19 subsets of the 1024 possible combinations if x=1. Thus, where there are 100 available variables, only 394 subsets would be tested where x=2. The variables from the network with the best test performance are thus identified for use (FIG. 3B, Step V).

[0140] Then the final set of networks is trained to perform the diagnosis (FIG. 4, Steps M, N, Q, R). Typically, a number of final neural networks are trained to perform the diagnosis. It is this set of neural networks (a that can form the basis of a deliverable product to the end user. Since different initial conditions (initial weights) can produce differing outputs for a given network, it is useful to seek a consensus. (The different initial weights are used to avoid error from trapping in local minima.) The consensus is formed by averaging the outputs of each of the trained networks which then becomes the single output of the diagnostic test.

Training a Consensus of Networks

[0141]FIG. 4 illustrates the procedure for the training of a consensus of neural networks. It is first determined whether the current training cycle is the final training step (Step M). If yes, then all available data are placed into the training data set (i.e., P=1) (Step N). If no, then the available data are divided into P equal-sized partitions, randomly selecting the data for each partition (Step O). In an exemplary embodiment, for example five partitions, eg, P₁-P₅, are created from the full set of available training data. Then two constructions are undertaken (Step P). First, one or more of the partitions are copied to a test file and the remaining partitions are copied to a training file. Continuing the exemplary embodiment of five partitions, one of the partitions, e.g., P₁,, representing 20% of the total data set, is copied to the test file. The remaining four files, P₂-P₄, are identified as training data. A group of N neural networks is trained using the training partitions, each network having different starting weights (Step Q). Thus, in the exemplary embodiment, there will be 20 networks (N=20) with starting weights selected randomly using 20 different random number seeds. Following completion of training for each of the 20 networks, the output values of all 20 networks are averaged to provide the average performance on the test data for the trained networks. The data in the test file (partition P₁) is then run through the trained networks to provide an estimate of the performance of the trained networks. The performance is typically determined as the mean squared error of prediction, or misclassification rate. A final performance estimate is generated by averaging the individual performance estimates of each network to produce a completed consensus network (Step R). This method of training by partitioning the available data into a plurality of subsets is generally referred to as the “holdout method” of training. The holdout method is particularly useful when the data available for network training is limited.

[0142] Test set performance can be empirically maximized by performing various experiments that identify network parameters that maximize test set performance. The parameters that can be modified in this set of experiments are 1) the number of hidden processing elements, 2) the amount of noise added to the inputs, 3) the amount of error tolerance, 4) the choice of learning algorithm, 5) the amount of weights decay, and 6) the number of variables. A complete search of all possible combinations is typically not practical, due to the amount of processing time that is required. Accordingly, test networks are trained with training parameters chosen empirically via a computer program, such as ThinksPro™ or a user developed program, or from the results of existing test results generated by others who are working in the field of interest. Once a “best” configuration is determined, a final set of networks can be trained on the complete data set.

[0143] 3. Development of Biochemical Diagnostic Test

[0144] A similar technique for isolating variables may be used to build or validate a biochemical diagnostic test, and also to combine a biochemical diagnostic test data with the patient history diagnostic test to enhance the reliability of a medical diagnosis.

[0145] The selected biochemical test can include any test from which useful diagnostic information may be obtained in association with a patient and/or patient's condition. The test can be instrument or non-instrument based and can include the analysis of a biological specimen, a patient symptom, a patient indication, a patient status, and/or any change in these factors. Any of a number of analytical methods can be employed and can include, but are not limited to, immunoassays, bioassays, chromatography, monitors, and imagers. The analysis can assess analytes, serum markers, antibodies, and the like obtained from the patient through a sample. Further, information concerning the patient can be supplied in conjunction with the test. Such information includes, but is not limited to, age, weight, blood pressure, genetic history, and the other such parameters or variables.

[0146] The exemplary biochemical test developed in this embodiment employs a standardized test format, such as the Enzyme Linked Immunosorbent Assay or ELISA test, although the information provided herein may apply to the development of other biochemical or diagnostic tests and is not limited to the development of an ELISA test (see, e.g., Molecular Immunology: A Textbook, edited by Atassi et al. Marcel Dekker Inc., New York and Basel 1984, for a description of ELISA tests). Information important to the development of the ELISA test can be found in the Western Blot test, a test format that determines antibody reactivity to proteins in order to characterize antibody profiles and extract their properties.

[0147] A Western Blot is a technique used to identify, for example, particular antigens in a mixture by separating these antigens on polyacrylamide gels, blotting onto nitrocellulose, and detecting with labeled antibodies as probes. (See, for example, Basic and Clinical Immunology, Seventh Edition, edited by Stites and Terr, Appleton and Large 1991, for information on Western Blots.) It is, however, sometimes undesirable to employ the Western Blot test as a diagnostic tool. If instead, ranges of molecular weight that contain relevant information to the diagnosis can be pre-identified then this information can be “coded” into an equivalent ELISA test.

[0148] In this example, the development of an effective biochemical diagnostic test is dependent upon the availability of Western Blot data for the patients for which the disease condition is known or suspected. Referring to FIG. 5, Western Blot data are used as a source (Step W), and the first step in processing the Western Blot data are to pre-process the Western Blot data for use by the neural network (Step X). Images are digitized and converted to fixed dimension training records by using a computer to perform the spline interpolation and image normalization. It is necessary to align images on a given gel based only on information in the image in order to use data from multiple Western Blot tests. Each input of a neural network needs to represent a specific molecular weight or range of molecular weights accurately. Normally, each gel produced contains a standards image for calibration, wherein the proteins contained are of a known molecular weight, so that the standards image can also be used for alignment of images contained within the same Western Blot. For example, a standard curve can be used to estimate the molecular weight range of other images on the same Western Blot and thereby align the nitrocellulose strips.

[0149] The process for alignment of images is cubic spline interpolation. This is a method which guarantees smooth transitions at the data points represented by the standards. To avoid possible performance problems due to extrapolation, termination conditions are set so that extrapolation is linear. This alignment step minimizes the variations in the estimates of molecular weight for a given band on the output of the Western Blot.

[0150] The resultant scanned image is then processed to normalize the density of the image by scaling the density so that the darkest band has a scaled density of 1.0 and the lightest band is scaled to 0.0. The image is then processed into a fixed length vector of numbers which become the inputs to a neural network, which at the outset must be trained as hereinafter explained.

[0151] A training example is built in a process similar to that previously described where the results generated from the processing of the Western Blot data are trained (Step Y). To minimize the recognized problems of dependency on starting weights, redundancy among interdependent variables, and desensitivity resulting from overtraining a network, it is helpful to train a set of neural networks (consensus) on the data by the partitioning method discussed previously.

[0152] From the sensitivity analysis of the training runs on the processed Western Blot data, regions of significantly contributing molecular weights (MW) can be determined and identified (Step AA). As part of the isolation step, inputs in contiguous regions are preferably combined into “bins” as long as the sign of the correlation between the input and the desired output is the same. This process reduces the typical 100-plus inputs produced by the Western Blot, plus the other inputs, to a much more manageable number of inputs of less than about twenty.

[0153] In a particular embodiment, it may be found that several ranges of molecular weight may correlate with the desired output, indicative of the condition being diagnosed. A correlation may be either positive or negative. A reduced input representation may be produced by using a Gaussian region centered on each of the peaks found in the Western Blot training, with a standard deviation determined so that the value of the Gaussian was below 0.5 at the edges of the region.

[0154] In a specific embodiment, the basic operation to generate the neural network input is to perform a convolution between the Gaussian and the Western Blot image, using the log of the molecular weight for calculation.

[0155] The data may be tested using the holdout method, as previously described. For example, five partitions might be used where, in each partition, 80% of the data are used for training and 20% of the data are used for testing. The data are shuffled so that each of the partitions is likely to have examples from each of the gels.

[0156] Once the molecular weight regions important to diagnosis have been identified (Step AA), one or more tests for the selected region or regions of molecular weight may be built (Step AB). The ELISA biochemical test is one example. The selected region or regions of molecular weight identified as important to the diagnosis may then be physically identified and used as a component of the ELISA biochemical test. Whereas regions of the same correlation sign may, or may not, be combined into a single ELISA test, regions of differing correlation signs should not be combined into a single test. The value of such a biochemical test may then be determined by comparing the biochemical test result with the known or suspected medical condition.

[0157] In this example, the development of a biochemical diagnostic test may be enhanced by combining patient data and biochemical data in a process shown in FIG. 2. Under these conditions, the patient history diagnostic test is the basis for the biochemical diagnostic test. As explained herein, the variables that are identified as important variables are combined with data derived from the Western Blot data in order to train a set of neural networks to be used to identify molecular weight regions that are important to a diagnosis.

[0158] Referring to FIG. 2, Western Blot data are used as a source (Step W) and pre-processed for use by the neural network as described previously (Step X). A training example is built in a process similar to that previously described wherein the important variables from the patient history data and the results generated from the processing of the Western Blot data are combined and are trained using the combined data (Step Y). In parallel, networks are trained on patient history data, as described above (Step Z).

[0159] To minimize the recognized problems of dependency on starting weights, redundancy among interdependent variables, and desensitivity resulting from overtraining a network, it was found that it was preferable to train a set of neural networks (consensus set) on the data by the partitioning method. From the sensitivity analysis of the training runs on patient history data alone and on combined data, regions of significantly contributing molecular weights can be determined and identified as previously described (Step AA). As a further step in the isolation process, a set of networks is thereafter trained using as inputs the combined patient history and bin information in order to isolate the important bins for the Western Blot data. The “important bins” represent the important regions of molecular weight related to the diagnosis considering the contribution of patient history information. These bins are either positively or negatively correlated with the desired output of the diagnosis.

[0160] Once the molecular weight regions important to diagnosis have been identified (Step AA), one or more tests for the selected region or regions may be built and validated as previously described (Step AB). The designed ELISA tests are then produced and used to generate ELISA data for each patient in the database (Step AC). Using ELISA data and the important patient history data as input, a set of networks is trained using the partition approach as described above (Step AE). The partition approach can be used to obtain an estimate of the lower bound of the biochemical test. The final training (Step AE) of a set of networks, i.e., the networks to be used as a deliverable product, is made using all available data as part of the training data. If desired, new data may be used to validate the performance of the diagnostic test (Step AF). The performance on all the training data becomes the upper bound on the performance estimate for the biochemical test. The consensus of the networks represents the intended diagnostic test output (AG). This final set of neural networks can then be used for diagnosis.

[0161] 4. Improvement of Neural Network Performance

[0162] An important feature of the decision-support systems, as exemplified with the neural networks, and methods provided herein is the ability to improve performance. The training methodology outlined above may be repeated as more information becomes available. During operation, all input and output variables are recorded and augment the training data in future training sessions. In this way, the diagnostic neural network may adapt to individual populations and to gradual changes in population characteristics.

[0163] If the trained neural network is contained within an apparatus that allows the user to enter the required information and outputs to the user the neural network score, then the process of improving performance through use may be automated. Each entry and corresponding output is retained in memory. Since the steps for retraining the network can be encoded into the apparatus, the network can be re-trained at any time with data that are specific to the population.

[0164] 5. Method for Evaluating the Effectiveness of a Diagnostic Test Course of Treatmentt

[0165] Typically, the effectiveness or usefulness of a diagnostic test is determined by comparing the diagnostic test result with the patient medical condition that is either known or suspected. A diagnostic test is considered to be of value if there is good correlation between the diagnostic test result and the patient medical condition; the better the correlation between the diagnostic test result and the patient medical condition, the higher the value placed on the effectiveness of the diagnostic test. In the absence of such a correlation, a diagnostic test is considered to be of lesser value. The systems provided herein, provide a means to assess the effectiveness of a biochemical test by determining whether the variable that corresponds to that test is an important selected variable. Any test that yields data that improves the performance of the system is identified.

[0166] A method by which the effectiveness of a diagnostic test may be determined, independent of the correlation between the diagnostic test result and the patient medical condition (FIG. 6) is described below. A similar method may be used to assess the effectiveness of a particular treatment.

[0167] In one embodiment, the method compares the performance of a patient history diagnostic neural network trained on patient data alone, with the performance of a combined neural network trained on the combination of patient historical data and biochemical test data, such as ELISA data. Patient history data are used to isolate important variables for the diagnosis (Step AH), and final neural networks are trained (Step AJ), all as previously described. In parallel, biochemical test results are provided for all or a subset of the patients for whom the patient data are known (Step AK), and a diagnostic neural network is trained on the combined patient and biochemical data by first isolating important variables for the diagnosis (Step AL), and subsequently training the final neural networks (Step AM), all as previously described.

[0168] The performance of the patient history diagnostic neural network derived from Step AJ is then compared with the performance of the combined diagnostic neural network derived from Step AM, in Step AN. The performance of a diagnostic neural network may be measured by any number of means. In one example, the correlations between each diagnostic neural network output to the known or suspected medical condition of the patient are compared. Performance can then be measured as a function of this correlation. There are many other ways to measure performance. In this example, any increase in the performance of the diagnostic neural network derived from Step AM over that derived from Step AJ is used as a measure of the effectiveness of the biochemical test.

[0169] A biochemical test in this example, and any diagnostic test in general, that lacks sufficient correlation between that test result and the known or suspected medical condition, is traditionally considered to be of limited utility. Such a test may be shown to have some use through the method described above, thereby enhancing the effectiveness of that test which otherwise might be considered uninformative. The method described herein serves two functions: it provides a means of evaluating the usefulness of a diagnostic test, and also provides a means of enhancing the effectiveness of a diagnostic test.

[0170] 6. Application of the Methods to Identification of Variables for Diagnosis and Development of Diagnostic Tests

[0171] The methods and networks provided herein provide a means to, for example, identify important variables, improve upon existing biochemical tests, develop new tests, assess therapeutic progress, and identify new disease markers. To demonstrate these advantages, the methods provided have been applied to endometriosis and to pregnancy related events, such as the likelihood of labor and delivery during a particular period.

Endometriosis

[0172] The methods described herein, have provided a means to develop a non-invasive methodology for the diagnosis of endometriosis. In addition, the methods herein provide means to develop biochemical tests that provide data indicative of endometriosis, and also to identify and develop new biochemical tests.

[0173] The methodology for variable selection and use of decision-support systems, has been applied to endometriosis. A decision-support system, in this instance, a consensus of neural networks, has been developed for the diagnosis of endometriosis. In the course of this development, which is detailed in the EXAMPLES, it was found that it was possible to develop neural networks capable of aiding in the diagnosis of endometriosis that only rely on patient historical data, i.e, data that can be obtained from a patient by questionnaire format. It was found that biochemical test data could be used to enhance the performance of a particular network, but it was not essential to its value as a diagnostic tool. The variable selection protocol and neural nets provide a means to select sets of variables that can be inputted into the decision-support system to provide a means to diagnose endometriosis. While some of the identified variables, include those that have traditionally been associated with endometriosis, others of the variables have not. In addition, as noted above, variables, such as pelvic pain and dysmenorrhea that have been associated with endometriosis are not linearly correlated with it to permit diagnosis.

[0174] Exemplary decision-support system are described in the Example. For example, one neural net, designated pat07 herein, is described in Example 14. Comparison of the output of the pat07 network output with the probability of having endometriosis yields a positive correlation (see Table 1). The pat07 network can predict the likelihood of a woman having endometriosis based on her pat07 score. For example, if a woman has a pat07 score of 0.6, then she has a 90% probability of having endometriosis; if her pat07 score is 0.4, then she has a 10% probability of having endometriosis. The dynamic range of pat07 output when applied to the database was about 0.3 to about 0.7. Theoretically, the output values can range from 0 to 1, but values below 0.3 or above 0.7 were not observed. Over 800 women have been evaluated using the pat07 network, and its performance can be summarized as follows: TABLE 1 Endometriosis Pat07 Score (% of Total) <0.40 10 0.40-0.45 30 0.45-0.55 50 0.55-0.60 70 >0.60 90

[0175] The pat07 network score is interpreted as the likelihood of having endometriosis, and not whether or not a woman is diagnosed with endometriosis. The likelihood is based on the relative incidence of endometriosis found in each score group. For example, in the group of women with pat07 network score of 0.6 or greater, 90% of these women had endometriosis, and 10% of these women did not. This likelihood relates to the population of women at infertility clinics. Software programs have been developed that contain the pat07 network.

[0176] One program, referred to as adezacrf.exe, provides a single screen windows interface that allows the user to obtain the pat07 network score for a woman. User enters values for all 14 variables, pat07 network score is calculated following every keystroke. Another program, designated adzcrf2.exe, is almost exactly the same as adezacrf.exe, except that it allows for one additional input: the value of an ELISA test.

[0177] This program and network is a specific example of a method of expanding clinical utility of a diagnostic test. The ELISA test results did not correlate with endometriosis. By itself, the ELISA test does not have clinical utility. As another input parameter, the ELISA test improved network performance, so that one may assert that incorporating the ELISA result as an input for network analysis expanded the clinical utility of that ELISA test. Another program (provided herein in the Appendix II, designated adzcrf2.exe, provides a multiple screen windows interface that allows the user to obtain the pat07 network score for a woman. The multiple data entry screens guides the user to enter all patient historical data, and not just those parameters required as inputs for pat07. Pat07 score is calculated after all data are entered and accepted as correct by the user. This program also saves the data entered in *.fdb files, can import data, calculate pat07 scores on imported data, and export data. The user can edit previously entered data. All three of the above programs serve as specific examples of the diagnostic software for endometriosis.

[0178]FIG. 11 illustrates an exemplary interface screen used in the diagnostic software for endometriosis. The display 1100, which is provided as a MicroSoft Window™-type display, provides a template for entry of numerical values for each of the important variables which have been determined for diagnosis of endometriosis. Input of data to perform a test is accomplished using a conventional keyboard alone, or in combination with a computer mouse, a trackball or joystick. For purposes of this description, a mouse/keyboard combination will be used.

[0179] Each of the text boxes 1101-1106 is for entry of numerical values representative of the important variables Age (box 1101); Number of Pregnancies (box 1102); Number of Births (box 1103); Number of Abortions (box 1104); Number of Packs of Cigarettes Smoked per Day (box 1105); and ELISA test results (box 1106). To enter the subject patient's age, the user moves the mouse so that the pointer on the screen is in box 1101, then clicks on that location. Entry of the number representative of the patient's age is done using the keyboard. The remaining boxes are accessed by pointing and clicking at the selected box.

[0180] Boxes 1107-1115 are important selected variables for which the data are binary, i.e., either “yes” or “no”. The boxes and the variables are correlated as follows: BOX VARIABLE 1107 Past History of Endometriosis 1108 Dysmenorrhea 1109 Hypertension During Pregnancy 1110 Pelvic Pain 1111 Abnormal PAP/Dysplasia 1112 History of Pelvic Surgery 1113 Medication History 1114 Genital Warts 1115 Diabetes

[0181] A “yes” to any one of these variables can be indicated by pointing at the corresponding box and clicking the mouse button to indicate an “X” within the box.

[0182] The network automatically processes the data after every keystroke, so changes will be seen in the output values displayed in text boxes 1118-1120 after every entry into the template 1100. Text box 1118, labelled “Endo” provides consensus network output for the presence of endometriosis; text box 1119, labelled “No Endo” provides consensus network output for the absence of endometriosis; and text box 1120 provides a relative score indicative of whether or not the patient has endometriosis. It is noted that the score in the text box 1120 is an artificial number derived from boxes 1118 and 1119 that makes it easier for the physician to interpret results. As presently set, a value in this box in the positive range up to 25 is indicative of having endometriosis, and a value in the negative range down to −25 will be indicative of not having endometriosis. The selected transformations permits the physician to readily interpret the pat07 output more readily.

[0183] As described in the Examples, the pat07 is not the only network that is predictive of endometriosis. Other networks, designated pat08 through pat23a have been developed. These are also predictive of endometriosis. All these networks perform very similarly, and can readily be used in place of pat07. Thus, by following the methodology used to develop pat07, other similarly functioning neural nets can be and have been developed. Pat08 and pat09 are the most similar to pat07: these networks were developed by following the protocol outlined above, and were allowed to select important variables from the same set as that used for development of pat07.

[0184] It was found that the initial weighting of variables can have effects on the outcome of the variable selection procedure, but not in the ultimate diagnostic result. Pat08 and pat09 used the same database of patient data as pat07 to derive the disease relevant parameters. Pat10 through pat23a were training runs originally designed to elucidate the importance of certain parameters: history of endometriosis, history of pelvic surgery, dysmenorrhea and pelvic pain. For development of these, the importance of a variable was assessed by withholding that variable from the variable selection process. It was found that the variable selection process and training the final consensus networks, network performance did not significantly deteriorate.

[0185] Thus, although a particular variable, or set of variables, may have appeared to be significant in predicting endometriosis, networks trained in the absence of such variables do not have a markedly reduced ability to predict endometriosis. These results to demonstrate (1) the effectiveness of the methodology for variable selection and consensus network training;, and (2) the adaptability of networks in general. In the absence of one type of data, the network found other variable(s) from which to extract that information. In the absence of one variable, the network selected different variables in its place and maintained performance.

[0186] Patients suspected of having endometriosis typically must undergo exploratory surgery to diagnose the disease. The ability to diagnose this disorder reliably using patient history information and optionally biochemical test data, such as western blot data, provides a highly desirable alternative to surgery. The methods herein and identified variables provide a means to do so.

[0187] Data related to the diagnosis of the disease of endometriosis has been gathered. The data includes, patient history data, western blot data and ELISA data. Application of the methodology herein, as shown in the EXAMPLES, demonstrated that patient history data alone can be predictive of endometriosis.

[0188] To assess the performance of the variable selection protocol and to ascertain where the 14 variable network (pat07) ranked (in performance) compared to all possible combinations of the 14 variables, networks were trained on every possible combination of the variables (16,384 combinations). Also, the variable selection protocol was applied to the set of 14 variables. From among the 14, 5 variables were selected. These are pregnancy hypertension, number of births, abnormal PAP/dysplasia, history of endometriosis and history of pelvic surgery. This combination ranked as the 68th best performing combination out the 16,384 (99.6 percentile) possible combinations, thereby demonstrating the effectiveness of variable selection protocol. Also, the combination that includes all 14 variables was ranked 718th out the 16,384 possible combinations (95.6 percentile).

[0189] These results also show that subsets of the 14 variables are useful. In particular, any subset of the selected set of parameters, particularly the set of fourteen variables, that contain one (or more) of the following combinations of three variables can be used with a decision-support system for diagnosis of endometriosis:

[0190] a) number of births, history of endometriosis, history of pelvic surgery;

[0191] b) diabetes, pregnancy hypertension, smoking;

[0192] c) pregnancy hypertension, abnormal pap smear/dysplasia, history of endometriosis;

[0193] d) age, smoking, history of endometriosis;

[0194] e) smoking, history of endometriosis, dysmenorrhea;

[0195] f) age, diabetes, history of endometriosis;

[0196] g) pregnancy hypertension, number of births, history of endometriosis;

[0197] h) Smoking, number of births, history of endometriosis;

[0198] I) pregnancy hypertension, history endometriosis, history of pelvic surgery;

[0199] j) number of pregnancies, history of endometriosis, history of pelvic surgery;

[0200] k) number of births, abnormal PAP smear/dysplasia, history of endometriosis;

[0201] l) number of births, abnormal PAP smear/dysplasia, dysmenorrhea;

[0202] m) history of endometriosis, history of pelvic surgery, dysmenorrhea; and

[0203] n) number of pregnancies, history of endometriosis, dysmenorrhea.

[0204] As shown in the examples, other sets of important selected variables that perform similarly to the enumerated 14 variables can be obtained. Other smaller subsets thereof may be also be identified.

Predicting Pregnancy Related Events, Such as the Likelihood of Delivery Within a Particular Time Period

[0205] The methods herein may be applied to any disorder or condition, and are particularly suitable for conditions in which no diagnostic test can be adequately correlated or for which no biochemical test or convenient biochemical test is available. For example, the methods herein have been applied to predicting pregnancy related events, such as the likelihood of delivery within a particular time period.

[0206] Determination of impending birth is of importance, example, for increasing neonatal survival of infants born before 34 weeks. The presence of fetal fibronectin in secretion samples from the vaginal cavity or the cervical canal from a pregnant patient after week 20 of pregnancy is associated with a risk of labor and delivery before 34 weeks. Methods and kits for screening for fetal fibronectin in body fluids and tissues, particularly in secretion samples from the vaginal cavity or the cervical canal, of a pregnant patient after week 20 of pregnancy are available (see, U.S. Pat. Nos. 5,516,702, 5,468,619, and 5,281,522, and 5,096,830; see, also U.S. Pat. Nos. 5,236,846, 5,223,440, 5,185,270).

[0207] The correlation between the presence of fetal fibronectin in these secretions and the labor and delivery before 34 weeks is not perfect; there are significant false-negative and false-positive rates. Consequently, to address the need for methods to assess the likelihood of labor and delivery before 34 weeks and to improve the predictability of the available tests, the methods herein have been applied to development of a decision-support system that assesses the likelihood of certain pregnancy related events. In particular, neural nets for predicting delivery before (and after) 34 weeks of gestation have been developed. Neural networks and other decision-support systems developed as described herein can improve the performance of the fetal fibronectin (fFN) test by lowering the number of false positives. The results, which are shown in EXAMPLE 13, demonstrate that use of the methods herein can improve the diagnostic utility of existing tests by improving predictive performance. EXEMPLARY neural networks and implementing software (Appendix III) are also provided herein.

PreTerm Delivery Risk Assessment Software

[0208] The Pre-term Delivery Risk Assessment Software (designated ptdinp.exe in Appendix III) program provides a means to input patient historical information and fFN test results into a database of fixed length ASCII records, and to perform the calculations necessary to generate inputs to three neural network tests used to evaluate the patients risks related to pre-term delivery. The software generates outputs that define the risk of preterm delivery. The Preterm Delivery Risk Assessment Software provided herein classifies the fFN ELISA positive results into 3 clinically distinct groups. In so doing, more than 50% of the fFN ELISA false positive results can be immediately identified. Moreover, about 35% of the true positive results can be rescued. The combination of the Preterm Delivery Risk Assessment Software with the ELISA test result provides new information which the clinician can use to improve the management of symptomatic patients. In particular, risk of delivery less than or equal to 34 week, 6 days, risk of delivery less than or equal to 7 days from time of sampling for fFN, and risk of delivery less than or equal to 14 days from time of sampling for fFN. The exemplified software uses neural networks designated EGA6, EGA7 f and EGA14 f (see Examples) herein, but can be used with any nets provided herein or developed based on the methods provided herein. The source code for the software is set forth in Appendix III.

[0209] The following is a description of the operation, inputs and outputs of the software.

[0210] A. User Interface

[0211] A typical user interface is depicted in FIGS. 12-15 and exemplary printed outputs are depicted in FIGS. 16A and 16B.

Main Menu

[0212] The main menu, tool bar and results display appear as shown in FIG. 12. The various fields in the main window are calculated as follows:

[0213] File: The name of the fdb file opened by the user.

[0214] Current Record: The record number counting from 1 that is currently displayed.

[0215] Number of records: The count of records contained in the open file.

[0216] Lab ID#: The contents of the associated field in the fixed length data record entered by the user.

[0217] Patient Name: The first, middle initial, and last name of the patient from the fixed length data record.

[0218] Pre-term Delivery Risk≦34 weeks 6 days, which is the consensus score from the ega6 set of neural networks.

[0219] Pre-term Delivery Risk≦7 days: The consensus score from the egad7 f set of neural networks.

[0220] Pre-term Delivery Risk≦14 days: The consensus score from the egadl4 f set of neural networks.

[0221] The File item on the main menu contains the following sub menu items and functions;

[0222] Open: Open a fixed length database file (.fdb) for entry and examination.

[0223] Print: Print the current record in one of the two formats as specified in the Options menu.

[0224] Print Setup: Provides standard Windows support for print functions setup.

[0225] Print Preview: Provides standard Windows support for print viewing.

[0226] MRU List: Provides a list of the four Most Recently Used files.

[0227] Exit: To Exit the program.

[0228] The Record item on the main menu will contain the following sub menu items and functions:

[0229] First Record: Display the first record in the database file.

[0230] Next Record: Display the next record in the database file.

[0231] Previous Record: Display the previous record in the database file.

[0232] Last Record: Display the last record in the database file.

[0233] Go to Record: Opens a dialog to go to a specific record number or search for a specific Lab ID#.

[0234] Edit Record: Opens a dialog to allow the examination and modification of data in the displayed record.

[0235] New Record: Creates a new record at the end of the database and automatically edits the record.

[0236] The Options item on the main menu will contain the following sub menu items and functions;

[0237] Print full form: When checked, the print function will print the full record as shown in the edit record dialog box. When unchecked, the print function will print the information shown in the main window. The default setting is unchecked.

[0238] Clear sub fields: When checked, sub fields will be cleared when field is unchecked in the edit dialog. The default setting is checked.

[0239] The View item on the main menu will contain the following sub menu items and functions:

[0240] Toolbar: Standard Windows Toolbar appears when checked.

[0241] Status Bar: Standard Windows Status Bar appears when checked. The Help item on the main menu will contain the following sub menu items and functions;

[0242] About PTDinp: Provide version number, program icon, and developer of the program. Tool Bar buttons will be provided for the following functions:

[0243] File Open

[0244] View First Record

[0245] View Previous Record

[0246] View Next Record

[0247] View Last Record

[0248] Edit Record

[0249] New Record

[0250] Go To Record

[0251] Help About

Edit Dialog

[0252] An exemplary Edit Record dialog box is set forth in FIG. 13. Through this dialog the user can exam, change or input patient specific data into a fixed length database record. The table below provides the size and location of each item in the fixed length database record. For entry into the dialog box relevant items are checked; all checked items are assigned a value of 1, all others are assigned a value of 0. The alphanumeric fields in the dialog box, such as Lab ID#, name, date of birth, EGA boxes, G (gravity), P (parity), A (abortions) are assigned the entered values. The table set forth (True=checked, false=unchecked) below summarizes how the information entered into the dialog box is converted for storage in the fixed length database record. NAME POSITION WIDTH DESCRIPTION LAB ID #  1 12  ACSII text LAST NAME  13 24  ACSII text FIRST NAME  37 24  ACSII text MIDDLE INITIAL  61 2 ACSII text DATE OF BIRTH  93 10  ACSII mm/dd/yy ETHNIC ORIGIN WHITE 103 2 0 = FALSE 1 = TRUE ETHNIC ORIGIN BLACK 105 2 0 = FALSE 1 = TRUE ETHNIC ORIGIN ASIAN 107 2 0 = FALSE 1 = TRUE ETHNIC ORIGIN HISPANIC 109 2 0 = FALSE 1 = TRUE ETHNIC ORIGIN NATIVE 111 2 0 = FALSE AMERICAN 1 = TRUE ETHNIC ORIGIN OTHER 113 2 0 = FALSE 1 = TRUE MARITAL STATUS 115 2 1 = Single (only one box can be checked) 2 = Married 3 = Divorced 4 = Widowed 5 = Living with partner 6 = Other Symptoms of Preterm labor 117 2 0 = No 1 = Yes Vaginal Bleeding 119 2 0 = N/A (check if sub field checked) 1 = Trace 2 = Medium 3 = Gross Uterine Contractions 121 2 0 = FALSE 1 = TRUE Intermittent lower abdominal 123 2 0 = FALSE pain, dull low back pain 1 = TRUE Bleeding during the second 125 2 0 = FALSE or third trimester 1 = TRUE Menstrual-like or intestinal 127 2 0 = FALSE cramping 1 = TRUE Change in vaginal discharge 129 2 0 = FALSE 1 = TRUE Patient is not “feeling right” 131 2 0 = FALSE 1 = TRUE Number/hr. 133 2 0 = Uterine Contractions FALSE 1 = “<1” 2 = “1-3” 3 = “4-6” 4 = “7-9” 5 = “10-12” 6 = “>12” EGA by SONO 135 8 ACSII weeks.days format EGA by LMP 143 8 ACSII weeks.days format EGA at Sampling 151 8 ACSII weeks.days format GRAVITY (G:) 159 2 ASCII number PARITY (P:) 161 2 ASCII number ABORTIONS (A:) 163 2 ASCII number Number of Preterm delivery 165 2 0 = NONE 1 = “1” 2 = “2” 3 = “>2” No previous pregnancies 167 2 1 = “Gravity = 0” Previous pregnancies with no 169 2 0 = FALSE complications 1 = TRUE History of Preterm delivery 171 2 0 = FALSE 1 = TRUE History of preterm PROM 173 2 0 = FALSE 1 = TRUE History of incompetent cervix 175 2 0 = FALSE 1 = TRUE History of PIH/preeclampsia 177 2 0 = FALSE 1 = TRUE History of SAB prior to 179 2 0 = FALSE 20 weeks 1 = TRUE Multiple Gestation 181 2 0 = NONE (unchecked) 1 = “Twins” 2 = “Triplets” 3 = “Quads” Uterine or cervical 183 2 0 = FALSE abnormality 1 = TRUE Cerclage 185 2 0 = FALSE 1 = TRUE Gestational Diabetes 187 2 0 = FALSE 1 = TRUE Hypertensive Disorders 189 2 0 = FALSE 1 = TRUE Dilation 191 2 0 = Unk. Or None checked 1 = “<1” 2 = “1” 3 = “1-2” 4 = “2” 5 = “2-3” 6 = “3” 7 = “>3” Cervical Consistency 193 2 blank = (unchecked 1 = “Firm” 2 = “Mod” 3 = “Soft” Antibiotics 195 2 0 = FALSE 1 = TRUE Corticosteroids 197 2 0 = FALSE 1 = TRUE Tocolytis 199 2 0 = FALSE 1 = TRUE Insulin 201 2 0 = FALSE 1 = TRUE Antihypertensives 203 2 0 = FALSE 1 = TRUE Medication: None 205 2 0 = FALSE Medication: Unknown 207 2 0 = FALSE 1 = TRUE Qualitative fFN Result 209 2 0 = FALSE 1 = TRUE <34.6 Net Output Positive 211 20  ASCII coded float <34.6 Net Output Negative 231 20  ASCII coded float <7 Day Net Output Positive 251 20  ASCII coded float <7 Day Net Output Negative 271 20  ASCII coded float <14 Day Net Output Positive 291 20  ASCII coded float <14 Day Net Output Negative 311 20  ASCII coded float

Go To Dialog

[0253] The Go To dialog box is shown in FIG. 14. The user may enter either the record number or the Lab ID number. When OK is pressed the record is found and displayed based on the information contained in a database record.

Help About Dialog

[0254] The Help About dialog box, which can provide information, such as the title of the software, version and copyright information, is shown in FIG. 15.

[0255] B. Pre-term Delivery Risk Evaluation

[0256] 1. Loading the Networks

[0257] When a new database is opened or the program is first run, the neural networks associated with the risk evaluations are loaded. For each risk evaluation there are 8 neural networks that must be loaded. This is performed by repeated calls to the LoadNet function of the ThinksPro TKSDLL.DLL (a WINDOWS™ dynamic link library). Other suitable programs can be used to run the neural networks described herein. The LoadNet function automatically loads the weights associated with each network.

[0258] For the≦34 weeks, 6 days evaluation the following nets (described in the Examples) are loaded.

[0259] Ega6_0

[0260] Ega6_1

[0261] Ega6_2

[0262] Ega6_3

[0263] Ega6_4

[0264] Ega6_5

[0265] Ega6_6

[0266] Ega6_7.

[0267] For the≦7 days evaluation the following nets are loaded:

[0268] Egad7 f 0

[0269] Egad7 f 1

[0270] Egad7 f 2

[0271] Egad7 f 3

[0272] Egad7 f 4

[0273] Egad7 f 5

[0274] Egad7 f 6

[0275] Egad7 f 7

[0276] For the≦14 days evaluation the following nets are loaded:

[0277] Egad14 f 0

[0278] Egad14 f 1

[0279] Egad14 f 2

[0280] Egad14 f 3

[0281] Egad14 f 4

[0282] Egad14 f 5

[0283] Egad14 f 6

[0284] Egad14 f 7

[0285] 2. Processing the Inputs and Outputs

[0286] To run the evaluation of the pre-term delivery risks, data from the database record must be processed for use by the neural networks. The networks are run for a given evaluation when the “calculate risk” button is pressed in the edit record dialog (FIG. 13). The positive outputs (described below) of each network are averaged together to produce the value that is displayed, printed and placed in the database. The negative outputs (described below) are averaged and the result is placed in the database only.

[0287] a. For the≦34 weeks, 6 days (referred to herein as 34.6) evaluation

[0288] The≦34.6 networks use 11 inputs generated from the database record. These inputs are calculated as follows.

[0289] 1. Ethnic Origin White: 1.0 input if TRUE, 0.0 input if FALSE.

[0290] 2. Marital Status Living with Partner: 1.0 input if TRUE, 0.0 input if FALSE.

[0291] 3. EGA by SONO: Convert from weeks.days to weeks.

[0292] 4. Val1=EGA by LMP: Convert from weeks.days to weeks. Val2 =EGA by SONO: Convert from weeks.days to weeks. If Val2 <=13.0 then input is Val2; Else if the difference between Val1 and Val2 is >2 then input is Val1. Else input is Val2.

[0293] 5. EGA at Sample: Convert from weeks.days to weeks.

[0294] 6. If Dilatation none then input is 0.0.

[0295] If Dilatation<1 then input is 0.0.

[0296] If Dilatation 1 then input is 1.0.

[0297] If Dilatation 1-2 then input is 1.5.

[0298] If Dilatation 2 then input is 2.0.

[0299] If Dilatation 2-3 then input is 2.0.

[0300] If Dilatation 3 then input is 3.0.

[0301] If Dilatation>3 then input is 3.0.

[0302] 7. If Number of Preterm Delivery=0 then input is 0.0.

[0303] If Number of Preterm Delivery=1 then input is 1.0.

[0304] If Number of Preterm Delivery=2 then input is 2.0.

[0305] If Number of Preterm Delivery>2 then input is 3.0.

[0306] 8. Vaginal Bleeding: 1.0 input if TRUE, 0.0 input if FALSE.

[0307] 9. If Cervical Consistency unchecked then input is 1.823197.

[0308] If Cervical Consistency Firm then input is 1.0.

[0309] If Cervical Consistency Mod then input is 2.0.

[0310] If Cervical Consistency Soft then input is 3.0.

[0311] 10. Previous pregnancies with no complications: 1.0 input if TRUE, 0.0 input if FALSE.

[0312] 11. FFN Result: 1.0 input if Positive, 0.0 input if negative.

[0313] b. For the≦7 days evaluation

[0314] The≦7 day networks use 7 inputs generated from the database record. These inputs are calculated as follows.

[0315] 1. Ethnic Origin White: 1.0 input if TRUE, 0.0 input if FALSE.

[0316] 2. Uterine Contractions: 1.0 input if TRUE, 0.0 input if FALSE.

[0317] 3. Number of Abortions: Convert to float.

[0318] 4. Vaginal Bleeding: 1.0 input if TRUE, 0.0 input if FALSE.

[0319] 5. If Number/hr unchecked then input 0.0.

[0320] If Number/hr<1 then input 1.0.

[0321] If Number/hr 1-3 then input 2.0.

[0322] If Number/hr 4-6 then input 3.0.

[0323] If Number/hr 7-9 then input 4.0.

[0324] If Number/hr 10-12 then input 5.0.

[0325] If Number/hr>12 then input 6.0.

[0326] 6. No previous pregnancies: 1.0 input if TRUE, 0.0 input if FALSE.

[0327] 7. fFN Result: 1.0 input if Positive, 0.0 input if negative.

[0328] C. For the≦14 days evaluation

[0329] The≦14 day networks use 7 inputs generated from the database record. These inputs are calculated as follows.

[0330] 1. Ethnic Origin Native American: 1.0 input if TRUE, 0.0 input if FALSE.

[0331] 2. Marital Status Living with Partner: 1.0 input if TRUE, 0.0 input if FALSE.

[0332] 3. Uterine Contractions: 1.0 input if TRUE, 0.0 input if FALSE.

[0333] 4. If Dilatation none then input is 0.0.

[0334] If Dilatation<1 then input is 0.0.

[0335] If Dilatation 1 then input is 1.0.

[0336] If Dilatation 1-2 then input is 1.5.

[0337] If Dilatation 2 then input is 2.0.

[0338] If Dilatation 2-3 then input is 2.0.

[0339] If Dilatation 3 then input is 3.0.

[0340] If Dilatation>3 then input is 3.0.

[0341] 5. If Number/hr unchecked then input 0.0.

[0342] If Number/hr<1 then input 1.0.

[0343] If Number/hr 1-3 then input 2.0.

[0344] If Number/hr 4-6 then input 3.0.

[0345] If Number/hr 7-9 then input 4.0.

[0346] If Number/hr 10-1 2 then input 5.0.

[0347] If Number/hr>1 2 then input 6.0.

[0348] 6. No previous pregnancies: 1.0 input if TRUE, 0.0 input if FALSE.

[0349] 7. FFN Result: 1.0 input if Positive, 0.0 input if negative.

[0350] 3. Print Functions and Output interpretation

[0351] Based on the print full form option (options menu), print the full form if the option is checked and the results only if the option is not checked. FIGS. 16A and 16B show exemplary output formats, with the risk indices for each net, which are interpreted according to the following tables:

[0352] Risk of Preterm Delivery (Delivery before 34 weeks 6 days gestation) Risk Index Interpretation ≦.30 low risk >.30 high risk

[0353] Risk of Delivery within 14 days of sampling for fFN Qual ELISA. Risk Index Interpretation ≦0.10 low risk 0.10-0.40 moderate risk >0.40 high risk

[0354] Risk of Delivery within 7 days of sampling for fFN Qual ELISA. Risk Index Interpretation ≦0.05 low risk 0.05-0.60 moderate risk >0.60 high risk

[0355] D. Software Performance

[0356] As demonstrated below, the Preterm Delivery Risk Assessment Software supplements the fFN ELISA results in a clinically useful manner. By combining patient history and symptom information with the fFN ELISA test results, the software is able to more accurately assess the risk of preterm delivery. The data presented above suggest that the software is more capable of discriminating those women truly at risk for preterm delivery: whereas the fFN ELISA test has relatively high false positive rates and low positive predictive value, the software test reduces false positive observations by over 50% and doubles predictive value of the positive result. The fFN ELISA test allowed clinicians to identify those patients not at risk for preterm delivery. Given the significant increase in relative risk and the risk classification of the software test, the clinician may now identify those women who are at risk for preterm delivery. This capability represents a new advance in the clinical management of women who are experiencing symptoms of preterm labor.

[0357] In particular, the performance of the Preterm Delivery Risk Assessment Software has been evaluated on 763 women experiencing at least one of the following symptoms of preterm labor:

[0358] 1. Uterine contractions, with or without pain.

[0359] 2. Intermittent lower abdominal pain, dull, low backache, pelvic pressure.

[0360] 3. Bleeding during the second or third trimester.

[0361] 4. Menstrual-like or intestinal cramping, with or without diarrhea.

[0362] 5. Change in vaginal discharge—amount, color or consistency.

[0363] 6. Not “feeling right”.

[0364] All 763 women were tested for fFN using the Qualitative fFN ELISA test. Based solely on the ELISA test, 149 women tested positive for fFN of which only 20 (13.4%) delivered within 7 days and 25 (16.8%) delivered within 14 days.

[0365] The low positive predictive value of the fFN ELISA test is enhanced by the Preterm Delivery Risk Assessment Software, which combines the fFN ELISA result with other patient information.

[0366] Table 1 compares the performance of the Qualitative fFN ELISA Test with the Preterm Delivery Risk Assessment Software Test for predicting delivery before 35 weeks completed gestation. The number of false positive observations decreased from 105 to 42, or about 60%. The decrease in false positive results is accompanied by a corresponding increase in true negative results, from 584 for the fFN ELISA to 647 for the software test. Moreover, a reduction in false negative results was also observed, from 30 for the ELISA test to 25 for the software test. Accordingly, the sensitivity and the specificity of the ELISA test are augmented by the software from 59.5% to 66.2% and from 84.8% to 90.4%, respectively. The positive predictive nearly doubles, increasing from 29.5% to 53.9%, and both the odds ratio and relative risk are increased substantially. TABLE 1 Performance comparison of Qualitative fFN ELISA Test and the Preterm Delivery Risk Assessment Software Test relative to risk of preterm delivery before 35 completed weeks of gestation. The Risk Assessment Software combines fFN ELISA Test results with patient history and symptom information to provide a more accurately assess risk of preterm delivery (before 35 completed weeks of gestation). QUAL fFN RISK ASSESSMENT MEASURE ELISA TEST SOFTWARE TEST True Positive 44 49 False Positive 105 42 True Negative 584 647 False Negative 30 25 Sensitivity 59.5% 66.2% Specificity 84.8% 96.3% Pos PV 29.5% 53.9% Neg PV 95.1% 96.3% Odds Ratio 8.2 30.2 Relative Risk 6.0 14.6

[0367] Table 2 compares the performance of the two tests relative to risk of preterm delivery within 7 days. The largest difference between the two tests is in the reduction of false positive test results of the software when compared to the ELISA test. The software decreased the number of false positive observations from 129 to 57, or about 56%. Accompanying this decrease in false positive results is the matching increasing in true negative results, from 611 to 683. The true positive and false negative results remained essentially unchanged. The sensitivity and specificity of the software test is much higher than the ELISA test. Compare the sensitivity of 91.3% for the software with 87.0% for the ELISA, and the specificity of 92.3% for the software with 92.3% for the ELISA. Furthermore, the software test doubles the positive predictive value, increasing form 13.4% to 26.9%. Finally, the odds ratio is quadrupled and the relative risk more than tripled by the software. TABLE 2 Performance comparison of Qualitative fFN ELISA Test and the Preterm Delivery Risk Assessment Software Test relative to risk of preterm delivery within 7 days. QUAL fFN RISK ASSESSMENT MEASURE ELISA TEST SOFTWARE TEST True Positive 20 21 False Positive 129 57 True Negative 611 683 False Negative 3 2 Sensitivity 87.0% 91.3% Specificity 82.6% 92.3% Pos PV 13.4% 26.9% Neg PV 99.5% 99.7% Odds Ratio 31.6 125.8 Relative Risk 27.4 89.7

[0368] Table 3 compares the performance of the two test relative to risk of preterm delivery within 14 days. Once again, the software decreases false positive test results when compared to the ELISA test, from 124 to 55, or about 53%. This decrease in false positive results is matched by the corresponding increase in true negative results, from 609 to 678. The number of true positive and false negative results were unchanged. Whilst the sensitivity of the test was unaffected, the specificity of the test rose nearly 10 points, increasing from 83.1 % to 92.5%. As seen before, the positive predictive value nearly doubled, increasing from 16.8% to 31.3%, and the odds ratio and relative risk increased substantially from 24.6 to 61.6 and from 20.7 to 44.7, respectively. TABLE 3 Performance comparison of Qualitative fFN ELISA Test and the Preterm Delivery Risk Assessment Software Test relative to risk of preterm delivery within 14 days. QUAL fFN RISK ASSESSMENT MEASURE ELISA TEST SOFTWARE TEST True Positive 25 25 False Positive 124 55 True Negative 609 678 False Negative 5 5 Sensitivity 83.3% 83.3% Specificity 83.1% 92.5% Pos PV 16.8% 31.3% Neg PV 99.2% 99.3% Odds Ratio 24.6 61.6 Relative Risk 20.7 44.7

[0369] The following examples are included for illustrative purposes only and are not intended to limit the scope of the invention.

EXAMPLE 1 Evaluation of Patient History Data for Relevant Variables

[0370] This examples demonstrates selection of the candidate variables.

Requirements

[0371] Evaluation of the patient history to determine which variables are relevant to the diagnosis. This example is performed by performing a sensitivity analysis on each of the variables to be used in the diagnosis. Two methods can be used to perform this analysis. The first is to train a network on all the information and determine from the network weights, the influence of each input on the network output. The second method is to compare the performance of two networks, one trained with the variable included and the second trained with the variable eliminated. This training would be performed for each of the suspected relevant variables. Those that did not contribute to the performance will be eliminated. These operations are performed to lower the dimension of the inputs to the network. When training with limited amounts of data, a lower input dimension will increase the generalization capabilities of the network.

Analysis of Data

[0372] The data used for this example included 510 patient histories. Each record contained 120 text and numeric fields. Of these fields, 45 were identified as being known before surgery and always containing information. These fields were used as the basic available variables for the analysis and training of networks. A summary of the variables used in this example was as follows:  1. age (preproc)- Preprossed 24. Uterine/Tubal to normalize the age to Anomalies26. fall between 0 and 1 Ectopic Preg  2. Diabetes 25. Fibroids  3. Preg Induced DM 26. Ectopic Preg.  4. Hypertension 27. Dysfunctional Uterine Bid.  5. Preg hyperplasia 28. Ovarian Cyst  6. Autoimmune Disease 29. Polycystic Ovarian Synd  7. Transplant 30. Abnormal PAP/Dysplasia  8. Packs/Day 31. Gyn Cancer  9. Drug Use 32. Other HX 10. #Preg 33. Past HX of Endo 11. #Birth 34. Hist of Pelvic Surgery 12. #Abort 35. Medication History 13. Hist of Infertility 36. Current Exog. Hormone 14. Ovulatory 37. Pelvic Pain 15. Anovulatory 38. Abnormal Pain 16. Unknown 39. Menstrual Abnormalities 17. Oligoovulatory 40. Dysmenorrhea 18. Hormone Induced 41. Dyspaarunia 19. Herpes 42. Infertility 20. Genital Warts 43. Adnneaxal Masses/Thickening 21. Other sexually transmitted 44. Undetermined diseases (STD) 22. Vag Infections 45. Other Symptoms 23. Pelvic inflammatory disease (PID)

Methodology Used

[0373] The most commonly used method for determining the importance of variables is to train a neural network on the data with all the variables included. Using the trained network as the basis, a sensitivity analysis is performed on the network and the training data. For each training example the network is run in the forward mode (no training). The network outputs were recorded. The for each input variable, the network is rerun with the variable replaced by it's average value over the training example. The difference in output values is squared and accumulated. This process is repeated for each training example. The resulting sums are then normalized so that the sum of the normalized values equals the number of variables. In this way, if all variables contribute equally to the output, their normalized value would be 1.0. The normalized value can then be ranked in order of importance.

[0374] There are several problems with the above approach. First, it is dependent on the neural network solution found. If different network starting weights are used, a different ranking might be found. Secondly, if two variables are highly correlated, the use of either would contain sufficient information. Depending on the network training run, only one of the variables might be identified as important. The third problem is that an overtrained network can distort the true importance of a variable.

[0375] To minimize the effects of the above problems, several networks were trained on the data. The training process was refined to produce the best possible test set performance so that the networks had learned the underlying relationship between the inputs and the desired outputs. By the end of this process, both a good set of networks would be available and the training configuration for the final trained networks would be established. The sensitivity analysis was performed on each of the networks trained and the normalized values were averaged. For this example, a training run included 15 networks trained on five partitions of the available data using a holdout method.

[0376] Once the ranking of variables has been established, test runs are made to determine the effects of eliminating variables has on the test set performance. Eliminating a variable that has a small contribution should lower the test set performance. When overtraining is an issue, due to limited training data, eliminating variables can actually improve the test set performance. To save on processing time, groups of variables can be eliminated in a test based on the ranking.

Results

[0377] The rankings or variables are as follows and are reported for networks trained in run pat05. 01. 35 Medication History 02. 33. Past history of Endo 03. 11 #Birth 04. 37. Pelvic Pain 05. 40. Dysmenorrhea 06. 34. Hist of Pelvic Surgery 07. 1. Age(preproc) 08. 13. Hist of Infert 09. 8. Packs/Day 10. 36. Current Exog. Hormones 11. 42. Infertility 12. 18. Hormone Induced 13. 15. Anovulatory 14. 14. Ovulatory 15. 43. Adnnexal Masses/Thickening 16. 45. Other Symptoms 17. 30 Abnormal PAP/Dysplasia 18. 26. Ectopic Preg. 19. 19. Herpes 20. 39. Menstrual Abnormalities 21. 12. #Abort 22. 41. Dyspaarunia 23. 24. Uterine/Tubal Anomalies 24. 31. Gyn Cancer 25. 32. Other history 26. 10. #Preg 27. 28. Ovarian Cyst 28. 25. Fibroids 29. 22. Vag Infections 30. 16. Unknown 31. 27. Dysfunctional Uterine Bld. 32. 38. Abdominal Pain 33. 5. Preg hyperplasia 34. 9. Drug Use 35. 20. Genital Warts 36. 3. Preg Induced DM 37. 4. Hypertension 38. 21. Other STD 39. 23. PID 40. 44. Undetermined 41. 2. Diabetes 42. 17. Oligoovulatory 43. 6. Autoimmune Disease 44. 29. Polycystic Ovarian Synd 45. 7. Transplant

[0378] Subsets of the variables were tested and the final set of 14 variables to be used to train the pat07 networks [see, Examples 13 and 14]. Some variables were used that were not in the above top 14. This occurred to improve the test set performance. The rankings for the pat07 networks are as follows: 01. 10. Past history of Endo 02. 6. #Birth 03. 14. Dysmenorrhea 04. 1. Age(preproc) 05. 13. Pelvic Pain 06. 11. Hist of Pelvic Surgery 07. 4. Packs/Day 08. 12. Medication History 09. 5. #Preg 10. 7. #Abort 11. 9. Abnormal PAP/Dysplasia 12. 3. Preg hyperplasia 13. 8. Genital Warts 14. 2. Diabetes

Conclusions

[0379] The set of variables identified in this example appear to be reasonable based on the testing and information.

EXAMPLE 2 Train Networks on Patient History Data

[0380] This example, using the above 14 variables, demonstrates methods for setting and optimizing various parameters.

Requirements

[0381] At the completion of the above examples, train a set of networks on the reduced patient history and record their performance. Experiments were run to determine the best configuration and parameters for training of the networks. An analysis of the performance was performed to determine the number of false positive and false negatives, to see if a given subset of the patients can be reliably diagnosed. Since there was limited data, the estimated performance was determined by leaving out small portions of the database (25%) for testing and training on the remaining data. This method was repeated until all of the data has been used as test data in one of the networks. The combined results on the test data then become the performance estimate. A final network was be trained using all of the available data as training data.

Methodology Used

[0382] When dealing with small training examples, the holdout method is effective in providing test information useful in determining network configuration and parameter settings. In order to maximize the data available for training without a big increase in processing time a 20% holdout was used instead of the proposed 25%. This produced 5 partitions of the data instead of 4 and made 80% of the data for training in each partition.

[0383] To minimize the effects of the random starting weights, several networks were trained in the full training runs. In theses runs three networks were trained in each of the five partitions of data, each from a different random start. The outputs of the networks were averaged to form a consensus result that has a lower variance than could be obtained from a single network.

[0384] A number of experiments were performed to find network parameters that would maximize the test set performance. The parameters modified in this process were as follows;

[0385] 1. Number of hidden processing elements.

[0386] 2. Amount of Noise added to the inputs.

[0387] 3. Amount of Error tolerance.

[0388] 4. Learning algorithm used.

[0389] 5. Amount of Weights decay used.

[0390] 6. Number of input variables used.

[0391] A complete search of all possible combinations of 45 variables was not feasible because of the amount of CPU time needed for the tests. Test networks were trained with parameters chosen from based on parameters known by those of skill in the art to be important in this area and based on results of prior tests. Other sets of variables would also have been suitable. Also, as shown elsewhere herein, combinations of all of the selected 14 variables have been tested. Once the best configuration was determined, a final set of networks was trained on the complete data set of 510 patients. In the final set of networks, a consensus of eight networks was made to produce the final statistics.

Results

[0392] The final holdout training run was pat06 with 14 variables. The performance on the test data was 68.23%. The full training run was pat07 with the same network configuration as pat06. The performance on the training data was 72.9%. Statistics were generated on the last training run based on the use of a cutoff in the network output values. If the network output was below the cutoff, the example was rejected from consideration. The following table is a summary of the results for the consensus of eight networks in the pat07. A test program named adzcrf was produced to demonstrate this final training. Cutoff 0.00 0.02 0.075 0.075 0.10 Sensi- .828179 .835821 .872247 .943750 .956522 tivity Speci- .598174 .627660 .630137 .638298 .745098 ficity PPV .732523 .761905 .785714 .816216 .871287 NPV .723757 .728395 .760331 .869565 .904762 Odds 2.695 3.000 3.494 4.907 7.412 Ratio % Re- 0 10.58 26.86 50.20 71.96 jected

EXAMPLE 3 Preprocessing and Input Western Blot Data Requirements

[0393] The antigen data, from Western Blots, for the patients that was originally delivered to Logical Designs provided information on only the peak molecular weights and their associated intensities. Analysis of this data and of the original images from which the data was taken, suggests that it may be possible to use the original image digitized in a way that could provide more information to the neural network. In examining the original images for two experiments, it preprocessing of the image data decreases the variability of the position of a specific molecular weight in the image. This preprocessing will use a polynomial fit through the standards image to produce a modified image. Preprocessing of the images will also include steps to normalize the background level and contrast of the images.

[0394] Once the preprocessing is complete, the image data could be used as is, or the peak molecular weights could be extracted. From resulting images, inputs to the neural network will be generated. As a typical image is about 1000 pixels long, methods to reduce the number of inputs will be investigated. As the image would be coded directly into the network inputs using the full or reduced dimension (resolution) images, a neural network will be trained with supervised learning to aid in the determination of the ranges of molecular weights that are related to the determination of the disease. This Example focuses on using the image as a whole in the input to the network.

Methodology Used

[0395] Using a correlation technique, similar features on images of Western blots were matched and a correlation plot was produced. From those plots, it was concluded that there was too much variation in matches on the correlation plots of two samples to accurately align the samples. Since each input of the network needed to accurately represent a molecular weight value, it was decided that only information from the standards image would be used for alignment of images.

[0396] A quadratic fit was performed on the standards image to generate a means to translate relative mobility information to molecular weight. After plotting a curve of relative mobility to the log of the molecular weight and examining the RSQR values, it was concluded that the quadratic fit was not accurate enough for performing this translation. The calculated weight for a standard molecule varied from gel to gel using the quadratic fit.

[0397] Several methods were tried to improve the translation of relative mobility to molecular weight. Cubic spline interpolation was selected. This method guarantees smooth transitions at the data points and is rapidly calculated. The only concern is how the method performs on values of relative mobility outside the intervals covered by the standards. If termination conditions are set properly, the extrapolation problem seems to be avoided. This was the selected method.

[0398] Using spline interpolation, the images were converted to fixed dimension training records. At this point, image intensity normalization had to be considered. Two alternatives were considered. The first was to perform no normalization. The second was to process the images so that the maximum value across the image was set to 1.0 and the minimum value was set to 0.0. Networks were trained on each alternative and the results were compared. With no noise added to the inputs, the preprocessed image network had a training example performance of 97% while the performance for no preprocessing was 79%. When noise was added, the two alternative gave similar results. The choice was made to use the preprocessed images for further training runs. This choice insured that a given network input would consistently be associated with a specific molecular weight within the tolerances achievable using the Western Blot method.

[0399] Using the above choices, a series of eight neural networks were trained to provide information on the importance of different molecular weights on the prediction of the Endo present variable. In order to permit an analysis of the direction of correlation, only a single hidden processing element was used in the training. A sensitivity analysis was performed on each of the networks and the resulting consensus was plotted using Excel.

[0400] The weights of the network were then averaged together to generate a consensus value for each weight. Since the interconnection weight from the hidden clement to the output could be either positive or negative. The weights were transformed so that all the output connections had the same sign. The weights were then averaged and the results plotted using Excel.

Results

[0401] The analysis of the Western Blot data was performed using a cubic spline interpolation for image alignment to the network inputs and Max/Min image preprocessing. Given that a certain amount of variability can be expected in the accuracy of alignment of the images, due to the Western Blot methodology, this approach is believed to give better results that the polynomial fit originally used.

[0402] The plot of the sensitivity analysis and of the weights for the final consensus networks indicated that there are regions on the Western Blot that can aid in the prediction and diagnosis of the disease. The width of the regions of positive and negative correlation, as seen in the network weights, also indicates that the results shown are significant. If the peaks had been very narrow, one would have to conclude that the peaks were artifacts of the training process, similar to overtraining, and not form the underlying process being learned. The regions that appear important are as follows:

[0403] Positive Correlation:

[0404] 31503.98-34452.12

[0405] 62548.87-65735.97

[0406] 84279.36-89458.49

[0407] Negative Correlation:

[0408] 19165.9-20142.47

[0409] 50263.36-53352.14

[0410] 67725.77-78614.77

[0411] While there were a number of positive and negative peaks, these appeared to be the most likely regions for inclusion into two ELISA tests. One test will focus on the positive regions and the other on the negative regions. The two resulting values can then be combined with the patient history data as input to the neural networks.

Conclusions

[0412] The neural network was able to find regions on the Western Blot that correlate with the presence of the disease.

EXAMPLE 4 Investigate Fixed Input Dimension for Western Blot Data Requirements

[0413] Using peak molecular weights extracted from the preprocessed image, methods to reduce the varying dimension of the western blot data for a patient to a fixed dimension for the neural network will be investigated. This approach is desirable in that it will have substantially fewer network inputs than the full image approach. The basic problem is that the test yields a varying number of molecular weights that might by interrelated. Comparison of results from Example and this example will indicate that patterns of molecular weights exist or if the weights are unrelated. Since there is some variability in the weight data the approach to the processing of this data will be similar to a fuzzy membership function, even though the classification will be performed with a neural network.

Additional Requirements

[0414] Fractions are identified from the Western blot data. Since production of these fractions is reproducible, the effectiveness of the use of this information will be determined by processing the Western blot image data into bins corresponding to the molecular weights of the fractions.

Methodology Used

[0415] From the results of Example 5, several ranges in molecular weight were determined to correlate with the disease. A reduced input representation was produced by using a gaussian region centered on each of the peaks found in Example 5. The standard deviation of the gaussian was determined so that the value of the gaussian was below 0.5 at the edges of the region. The basic operation performed to generate the neural network input was to perform a convolution between the gaussian and the Western blot image. The calculations were all performed using the log of the molecular weight.

[0416] A separate software program was produced. The program performed the convolution on the normalized images with respect to molecular weight and intensity. The parameters for calculation of the network inputs are contained in a table in the binproc program. In binproc the mean and std. deviation are stored in the table. The program is recompiled when the table values are changed. The program has a test mode that produces an output file that allows the gaussians to be plotted an compared to the Western Blot images, using Excel. Plots of regions are included in the documentation.

[0417] When working with 36 fractions, binproc.c was again modified to translate the positions of the fractions into table values for binproc. This modified program is called fproc.d. It's purpose is to perform the spline interpolation required to normalize the molecular weight value based on the standards. Binproc2.c was produced from binproc, replacing the mean and std. deviation tables with min. and max. tables which correspond to the endpoints of the fractions in the files supplied.

[0418] In order to test any of the data files produced by the above programs, the holdout methods was used with 80% of the data being used for training and the remaining 20% to be used for testing. Once the training data are produced form the Western Blot data, a random number column and the Patient ID column was added in the Excel spreadsheet. The data was then sorted on the random number column. This in effect shuffles the data. In this way, it is likely that each partition has examples from each of the gels. With these percentages, five separate training and test files were produced os as to allow a network performance to be estimated from the combined test set results.

[0419] Using ThinksPro™ the number of inputs used by the network could be varied by excluding inputs. Excluded inputs are not presented to the network during training. Using the sensitivity analysis as a guide, unimportant inputs are eliminated. Decreasing the dimension of the input space becomes even more important when the number of training examples is small. This method is the same as was used for eliminating variables in the patient history training runs. At the current time, this process is performed manually.

Results

[0420] In Example 5, networks trained on all the data were used to determine what ranges of molecular weights were important to the classification process. In this Example, the holdout method was used to train networks so that the test set performance could be estimated. The first set of test were based on regions identified in Example 5. The second set of tests were made using the fractions identified in the four ishgel files.

[0421] The initial consensus runs based on the top six regions found in Example 5 yielded poor performance (50%). Analysis of the input data generated, indicated that the regions used to generate the input data were too narrow to capture the important information from the image data. The regions were widened and the top ten regions from Example 5 were included instead of the top six. A test on the ten wider regions indicated slightly better performance. Using sensitivity analysis, three of the ten regions were eliminated and a complete test as run. The performance on the six of the ten wider regions improved to 54.5%.

[0422] As the number of inputs to the network was further decreased, the test set performance (estimated with the holdout method) continued to increase. The best performance was achieved from using only one of the regions, with molecular weight ranging from 66392.65 to 78614.74. The performance estimate was 58.5% on test data using the holdout method.

[0423] This process was applied again using, as a start, 36 regions based on identified fractions. There was a great deal of overlap in the 36 fractions. The top 7 fractions were determined from the 36 using sensitivity analysis. Similar performance of 58% was achieved using the subset of the fractions.

Conclusions

[0424] None of the tests yielded results that were very high. The primary reason for this is likely to be the limited amount of training data available for this Example. Results from previous Examples indicated that as the number of patients in the training sample decreased, that the performance on validation data also decreased. This relationship is illustrated in the following table. Network Patients Estimated Performance Patient History 510 68.23 (patO6) Elisa using patient 350 62.76 history data only Western Blot 200 58.0

[0425] Better results were achieved on the ELISA/patient historical data when including the Elisa variables, even with the reduced number of patients. This showed the value of the ELISA variable.

[0426] It appears that a number of regions can be determined as being important to the classification of the disease. Substantially different sets of regions has yielded similar results, indicating that there may be patterns in the Western Blot data that indicate the presence of the disease. With a small database of patients, it is more difficult to isolate these patterns.

[0427] It is clear that increasing the size of the database for Western Blot data will improve the performance of the networks trained on this data. When combining Western Blot data with patient historical data, the input dimension of the network will increase. The increase in input dimension usually requires more training examples to ensure generalization.

EXAMPLE 5 Train Networks Using Western Blot Data

[0428] The purpose of this example was to train a set of networks to determine the performance estimate for the diagnosis using only western blot data. Experiments were run to determine the best configuration and parameters for training of the networks. The method described in Example 2 above was be used for this performance estimate. A final network was trained using all of the available data as training data. The output of this trained network (antigen index) was used as an input to the network generated in the combined data phase.

Methodology Used

[0429] Several methods were used to find the best performing set of inputs for the available training data. From previous Examples, the use of the sensitivity analysis was shown to produce good results in identifying the importance of each of the inputs variables. The number of networks were trained on combinations of variables manually determined from the sensitivity analysis.

[0430] In preparing an automated procedure, the use of a 2×2 contingency table Chi square analysis of the variables was used to provide an alternative ranking of the importance of the variables. Since the inputs were continuous, a threshold was used for each input to generate the information needed for the contingency table. The Chi-square value varies depending on the setting of the threshold. The threshold value used in the ranking of variables was chosen to maximize the Chi square statistic.

[0431] The training runs made during the development of the automated procedure were chosen from these rankings. At the time that the training runs were made, an automated procedure had not been formulated. To save on overall processing time, only one partition of the training data was used. Combinations of variables that performed well in the first partition of the training and test data were then tried on remaining the partitions.

[0432] One method suggested in the literature for finding the best set of inputs has been to use a genetic algorithm to determine the highest performing set of inputs. Genetic algorithms typically require thousands of iterations to converge to a good solution. In working with the Western Blot data, this would represent a large amount of computer time, even with the small training example size. For 10 variables, an enumeration of all combinations would require 1024 training runs. An alternative to the genetic algorithm was attempted. In this alternative method, a neural network was trained to predict the test set RMS Error based on the set of inputs chosen. The training examples used for this experiment were the results of training runs on the first partition of the Western Blot data. The predictor network was then tested with all combinations to determine the predicted minimum combination. That input combination was then used to train a network on the Western Blot data. The main drawback of this method and the genetic algorithm approach is that the sensitivity analysis information, found to be very effective is ignored in the process.

Results

[0433] The basic rankings for the 10 variables (bins) in the Western Blot Data are based on a consensus of 8 networks trained on the full database of 200 examples. The results are as follows: 7 1.182073 9 1.055611 3 1.053245 8 1.039028 6 1.027239 10 1.023135 4 0.978769 5 0.952821 2 0.899936 1 0.788143

[0434] The rankings of the 10 variables based on the Chi-square analysis are as follows: 3 4.380517 9 3.751625 7 3.372731 2 3.058437 6 3.022164 5 2.787982 10 1.614931 4 1.225725 1 0.975502 8 0.711958

[0435] During the analysis of the Western Blot data, a number of networks were trained on the first partition(s) of the training data. The test results, which are ranked below, show the variables that were included in the training run. 1 2 3 4 5 6 7 8 9 10 Test Error 0 0 0 1 0 1 0 0 1 1 0.49291 0 0 1 0 0 0 1 0 1 0 0.49374 0 0 0 0 0 1 0 0 1 1 0.49831 1 0 0 0 0 0 1 0 0 1 0.50036 (11)  0 0 1 0 0 0 0 0 0 0 0.50145 0 0 0 0 0 0 1 0 0 1 0.50164 (13)  0 0 0 0 0 0 0 0 0 1 0.50174 (5) 0 0 0 0 0 0 1 0 0 0 0.50182 0 0 0 0 1 0 0 0 0 0 0.50295 (8) 0 0 1 0 1 0 1 0 0 0 0.50285 0 0 0 0 0 0 0 0 1 0 0.50323 0 0 0 0 0 1 0 0 0 0 0.50360 (7) 0 0 1 0 0 0 1 0 0 1 0.50587 0 1 1 0 0 0 0 1 0 0 0.50682 (3) 0 0 1 0 0 0 0 0 1 0 0.50707 0 0 0 1 1 1 0 0 1 1 0.50823 1 0 0 0 1 1 1 0 0 0 0.50853 (2) 0 0 0 0 1 0 1 0 0 0 0.50995 (1) 1 1 0 0 0 0 0 0 0 0 0.51158 (9) 0 0 0 0 0 0 1 0 1 0 0.51163 0 0 0 0 1 1 0 0 0 0 0.51372 (10)  0 0 0 0 0 0 0 1 1 0 0.51909 1 0 0 1 0 0 0 1 0 0 0.52084 (4) 1 1 0 0 1 0 1 0 0 1 0.52950 0 1 0 0 0 0 1 0 1 0 0.52978 0 0 0 1 0 1 0 1 0 0 0.53196 0 0 1 1 0 0 0 1 1 0 0.54841 0 0 1 1 0 0 1 0 1 0 0.54934 (14)  0 1 0 1 0 0 0 0 0 1 0.55178 (12)  1 1 0 0 0 1 1 0 0 0 0.55290 (6) 1 0 1 0 0 0 0 1 0 1 0.56664 0 0 1 1 0 1 0 1 1 1 0.59937

[0436] ( ) indicates combination was generated by prediction network training process.

[0437] In looking at the above test runs, it is clear that the more important variables in the rankings contributed to lower test set errors and that the more variables included, the lower the test set results. This shows the importance of choosing the best subset of variables in developing a high performance neural network.

[0438] Several combinations of variables were used to train networks on all partitions of the training data. The results of these runs are shown below. VARIABLES TIME SET PERFORMANCE 3 57.5% 3,9 53.5% 3,7,9 53.0% 4,6,9,10 57.0%

[0439] Since both rankings of variables showed 3, 7, and 9 as important, it is likely that this combination would give higher than 57.5% provided there was enough training data. Training example performance for this combination was 63.9%, showing the level of overtraining that occurred. Several of the first partition networks shown above had combinations of variables chosen by a neural network trained to predict the test performance. Those networks are indicated by a number in the last column. This number indicates the sequence in which tests were run. Combinations without a number were chosen manually from the rankings. It is likely that is this process were continued that the predictor network would eventually find the best combination. Since there are many factors that can effect the test set performance, it is likely that there is a lot of “noise” in the test set results. For this method to work better, a consensus approach may be needed to generate the training values for the predicted test set error. This problem would also be seen when using the consensus approach.

Conclusion

[0440] The process of using the sensitivity and contingency table rankings of variables is an effective and efficient technique for picking a set of variables to maximize the neural network performance. The top 3 variables under both rankings were the same, indicating that these methods are performing well. This method appears to work with the Western Blot data but should work well on any form of data, making this a general purpose neural network technique that can also be applied to patient history data.

[0441] The above results indicate more data would improve the level of performance. The sensitivity analysis shows little variation in the relative values of variables. Most of the variables contribute to the solution. This should be expected since the bins were chosen based on an analysis of neural network weights trained on the full Western Blot images. By using all or most of the variables, however, the neural networks quickly get into an overtraining situation. This can be avoided by adding data to the training example.

[0442] Tests with the neural network guided selection of variables proved to be less effective than the ranking approach. While the ranking approach was clearly the most effective, the neural network guided approach should also be able to eventually discover the best set of variables. Because it is a more direct approach than a genetic algorithm, it is likely to perform better than the genetic algorithm on similar data. The major drawback of this method is that it does not use the sensitivity analysis information to aid in the search.

EXAMPLE 6 Combine Patient History and ELISA Data Requirements

[0443] Using the processing developed in the above examples, train a set of networks on the combination of Patient History Data and ELISA Data. An index generated from an ELISA test, based on the use of the entire set of antigens will be used to determine the improvement in performance achieved by combining this information with the patient historical data.

Additional Requirements

[0444] In addition to the above requirements, a comparison between the data from several ELISAs, ELISA 100 and ELISA 200 data and ELISA 2 data, and an analysis of the interrelationships of variables were performed to help determine to what variables the original ELISA tests related.

Methodology Used

[0445] In order to determine the improvement in the diagnostic test performance achieved by the inclusion of ELISA test results, several trainings were made using the holdout methods described in EXAMPLE 2. The partitions of the data were made so that in each partition, 80% of the data was used for training and the remaining 20% was used for testing.

[0446] To minimize the effects of the random starting weights, several networks were trained in the full training runs. In these runs three networks were trained in each of the five partitions of data, each from a different random start. The outputs of the networks were averaged to form a consensus result that has a lower variance than could be obtained from a single network. Since the number of patients for which all forms of ELISA data was available was 325, new training runs with the original 14 variables were made to provide an accurate means of comparing the effects of the ELISA data on the diagnosis of the disease. Analysis of the ELISA 2 data showed a large range of values for the test. Plots showing the relation of ELISA 2 to the ELISA 100 data suggested that the log of the ELISA 2 data might be better than the raw value.

[0447] The comparison training runs were organized as follows:

[0448] Run 1:ELISA 100, ELISA 200, log (ELISA 2) and the original 14 variables.

[0449] Run 2:(ELISA 2) and the original 14 variables

[0450] Run 3: The original 14 variables

[0451] After making these comparison runs, a final set of networks was trained on the complete data set of 325 patients. In the final set of networks, a consensus of eight networks was made to produce the final statistics. The final run statistics are reported only on the training data and represent an upper bound on the true performance. The results from the last holdout run represent a possible lower bound on the performance.

[0452] From the training data each of the 65 variables, including not available for a diagnosis, were built into a training example of 325 training examples. The TrainDos training program was modified to automate the generation of networks to provide relationships between the variables. In each of 65 networks, one of the variables was predicted by remaining 64. A sensitivity analysis was performed for each network to indicate the importance of each variable in making the prediction.

Results

[0453] The consensus results for the three comparison runs are as follows: Run 1: All ELISA variables (CRFE:1) 66.46% Run 2: Log of ELISA 2 (CRFEL2) 66.77% Run 3: No ELISA Variables (CRFEL0) 62.76%

[0454] Comparison of Run 1 and Run 2 show that the addition of ELISA 100 and ELISA 200 data to ELISA 2 data had no effect. Therefore, ELISA 100 and ELISA 200 variables could be eliminated.

[0455] Comparisons of Run 2 and 3 showed that an input based on the ELISA test improved the diagnosis of the disease.

[0456] Comparison of Run 3 to pat06 showed a 5.47% drop in test performance. This could only be due to the decrease in the number of patients available on training. This also suggest that an increase in training data above 500 is likely to have a significant effect on the performance of the neural network on test data.

[0457] Based on these results, final networks were trained. Eight networks were trained on the 325 patients. The performance on the training data was 72.31 %. While this is similar results to the pat07 runs, it is clear that the improvement due to ELISA 2 data are being offset by a decrease in the amount of available training data.

[0458] Sensitivity Analysis results showed that the ELISA 2 variable ranked 7 out of the 15 variables used.

[0459] Plots of the hidden processing element outputs were made from the log files of the eight trained networks. A means was found so that the desired output could be indicated on the plots. By comparing the eight networks, it is clear that each performed the task in a different way. Some clustering of data points is seen in a few plots. Since this did not occur consistently, no conclusions could be drawn.

[0460] Statistics were generated on the last training run based on the use of a cutoff in the network output values. If the network output was below the cutoff, the example was rejected from consideration. The following table is a summary of the results for the consensus of eight networks in CRFLE2. Cutoff 0.00 0.02 0.05 0.075 0.10 Sensitivity .7790 .7911 .9016 .9596 .9595 Specificity .6549 .6552 .7200 .7755 .8529 PPV .7421 .7576 .8397 .8962 .9342 NPV .6992 .6972 .8181 .9048 .9063 Odds Ratio 2.63 2.75 4.96 8.86 12.5 % Rejected 0.62 15.69 39.38 54.46 66.76

[0461] In general, these results are better than the results for pat07.

[0462] A test program named adzcrf2.exe (see, Appendix II) was produced as a demo of this final training. This program permits the running of pat07 and CRFEL2 based on the value input in the ELISA field. A value of 0 in the field causes pat07 to be used.

[0463] The analysis of variable relationships was performed. Based on the analysis of the relationships, the variables which showed Endo Present as a contributing factor were compared to the variables used in predicting Endo. Results of training two networks (PATVARSA and PATVARS3) showed that in the case of Endo, relationships were not symmetric, as they are when using correlation. CRFVARSA.XLS was built from the sensitivity analysis results to summarize the results. These results show the nonlinear nature of the relationships. The importance of a variable is affected by the other variables in the training run. This suggests that a means of eliminating unimportant variables in an automated fashion may be required to increase the usefulness of this analysis.

[0464] Analysis of the variables relationship (CRFVAR00-CRFVAR64) showed that in most cases, the log of the ELISA 2 test had greater significance than the raw ELISA 2 value. In particular, the log value ranked higher for both predicting Endo Present and AFS Stage.

Conclusions

[0465] The ELISA 2 test adds to the predictive power of the neural network. The ELISA 2 test has eliminated the need for the original ELISA tests. Based on this result it is likely that results of the work with the Western Blot data will further improve the power of the neural network diagnostic test.

[0466] The effects of increased training data could be clearly seen in the comparison of Run 3 to pat06. The difference in performance suggests that the performance of the neural network will increase substantially with an increase in training data. It appears from the comparison that doubling the data could improve the performance by 10-1 5%. With 8-1 0 times the data the performance might increase to 75-80%.

EXAMPLE 7 Patient History Stage/AFS Score Training Requirements

[0467] Using methods developed in the above Examples, identify relevant variables for either the stage of the disease or the AFS Score. The selection of the target output variable to be used will be determined by a comparison of test set performance from a training run using the phase 1 list of important patient history variables. Once the list of important variables are selected, a consensus of 8 neural networks will be trained on the 510 patient database.

Methodology Used

[0468] Training examples were built for the Stage desired output and the AFS score desired output. There were 7 patients missing Stage information and 28 patients missing Score information. For the stage variable, the average value of 2.09 was used where the data was missing. For score, the missing data was replaced with a value depending on the value of the stage variable. For stage 1, a score of 3 was used. From stage 2, 10.5 was used. For stage 3, 28 was used and for stage 4 the value 55 was used.

[0469] Stage and score were reprocessed so that the desired output would fall in the range of 0.0 to 1.0. Stage was translated linearly. Two methods were used for score. The first was the square root of the score divided by 12.5. The second was the log of score +1 divided by the log of 150.

[0470] The holdout method was used to train networks on stage, square root score and log of score. These networks were trained using 45 variables. The results were compared to determine which variable and processing would be used for the remainder of the Example. The log of score was chosen.

[0471] At this point the procedure for isolating the set of important variables was begun. Eight networks were trained on the full training example and the consensus sensitivity analysis was generated to produce the first ranking of the variables. Then the Chi Square contingency table was generated to produce the second ranking of the variables. The procedure for isolating important variables was started manually, but was found to be too time consuming. The procedure was implemented as a computer program and was run on a computer for about one week before completing.

[0472] From the results of the variable selection, a set of eight networks were trained on the full training example. The consensus results were analyzed and compared to the Endo present results.

Results

[0473] The sensitivity analysis of all 45 variables gave the following ranking of variables: Name Input # Past history of Endo 33 Hist of Pelvic Surgery 34 Dysmenorrhea 40 #Birth 11 age (preproc) 1 Medication History 35 #Preg 10 Ectopic Pregnancy 26 Pelvic Pain 37 Adnnexal msses/Thickening 43 #Abort 12 Current Exod. Hormones 36 Hormone induced 18 Other history 32 Infertility 42 Packs/Day 8 Uterine/Tubal Anomalies 24 Dyspaarunia 41 Anovulatory 15 Hist of Infert 13 Unknown 16 Menstrual Abnormalities 39 Gyn Cancer 31 Abnormal PAP/Dysplasia 30 Other Symptoms 45 Herpes 19 Ovulatory 14 Genital Warts 20 Fibroids 25 Ovarian Cysts 28 Drug Use 9 Dysfunctional Uterine Bld. 27 PID 23 Hypertension 4 Vag Infections 22 Undetermined 44 Other STD 21 Preg HTM 5 Autoimmune Disease 6 Abdominal Pain 38 Preg Induced DM 3 Oligoovulatory 17 Diabetes 2 Polycystic Ovarian Snyd 29 Transplant 7

[0474] The Chi Square analysis gave the following ranking of variables: Name Input # Past history of Endo 33 #Preg 10 #Birth 11 Packs/Day 8 Dysmenorrhea 40 Pelvic Pain 37 Preg HTM 5 Hist of Infert 13 Abnormal PAP/Dysplasia 30 Infertility 42 Diabetes 2 Herpes 19 Hist Of Pelvic Surgery 34 #Abort 12 Other Symptoms 45 Medication History 35 Undetermined 44 Dysfunctional Uterine Bld. 27 Gyn Cancer 31 Uterine/Tubal Anomalies 24 Polycystic Ovarian Synd 29 Dyspaarunia 41 Genital Warts 20 Adnnexal masses/Thickening 43 Oligoovulatory 17 Autoimmune Disease 6 Abdominal Pain 38 Unknown 16 Ectopic Pregnancy 26 Ovulatory 14 Fibroids 25 Current Exod Hormones 36 Ovarian Cyst 28 Drug Use 9 Vag Infections 22 Preg Induced DM 3 PID 23 age (preproc) 1 Hormone induced 18 Anovulatory 15 Menstrual Abnormalities 39 Hypertension 4 Other STD 21 Transplant 7 Other history 32

[0475] The variables chosen in the variable selection procedure were as follows, showing the ranking from the final sensitivity analysis: Name Input # Past history of Endo 33 #Preg 10 Hist of Pelvic Surgery 34 age(proproc) 1 Dysmenorrhea 40 Ectopic Preg. 26 Oligoovulatory 17

[0476] The comparison of the score network to the Endo present network can be performed by forcing a threshold on the desired score output to produce an Endo present comparison. The results for the score and the pat07 networks are shown below. NETWORK PAT07 SCR07 Sensitivity .828179 .679525 Specificity .598174 .647399 PPV .732523 .789655 NPV .723757 .509091 Odds Ratio 2.695 2.017751

Conclusions

[0477] The set of variables identified in this Example appear to be reasonable.

[0478] The automated variable selection methodology appears to function properly. The choice of variables is well predicted by the sensitivity analysis.

[0479] Now that there are two methods for predicting the disease, the Endo present network and the Score network could be combined to improve the reliability of the prediction.

EXAMPLE 8 Patient History Adhesions Training Requirements

[0480] Using methods as outlined in EXAMPLE 7, identify relevant variables for Adhesions target output variable. This target output variable will be run using the phase 1 list of important patient history variables. This will also permit a comparison of the new outputs to the Endo present target variable used in phase 1. Once the list of important variables are selected, a consensus of 8 neural networks will be trained on the 510 patient database.

Methodology Used

[0481] Training data for the adhesions variable was generated in the same manner as for EXAMPLE 7. The adhesions variable generated two output variables in a manner similar to that used for Endo present. At this point the procedure for isolating the set of important variables was begun. Eight networks were trained on the full training example and the consensus sensitivity analysis was generated to produce the first ranking of the variables. Then the Chi Square contingency table was generated to produce the second ranking of the variables. The procedure for isolating important variables was started manually, but was found to be too time consuming. The procedure was implemented as a computer program and was run on a computer for about one week before completing.

[0482] From the results of the variable selection, a set of eight networks were trained on the full training example. The consensus results were analyzed and compared to the Endo present results.

Results

[0483] The sensitivity analysis of all 45 variables gave the following ranking of variables: Name Input # Hist of Infert 13 Medication History 35 Ectopic Pregnancy 26 Packs/Day 8 Hist of Pelvic Surgery 34 Infertility 42 #Birth 11 Dyspaarunia 41 Hormone Induced 18 Past history of Endo 33 Herpes 19 #Preg 10 Current Exod. Hormones 36 age(preproc) 1 Dysmenorrhea 40 Uterine/Tubal Anomalies 24 Anovulatory 15 Other history 32 Ovarian Cyst 28 Pelvic Pain 37 Gyn Cancer 31 Ovulatory 14 Menstrual Abnormalities 39 #Abort 12 Unknown 16 Abnormal PAP/Dysplasia 30 Abdominal Pain 38 Adnnexal masses/Thickening 43 Fibroids 25 Pelivic inflammatory disease 23 (PID) Dysfunctional Uterine Bld 27 Vag Infections 22 Drug Use 9 Other Symptoms 45 Genital Warts 20 Autoimmune Disease 6 Hypertension 4 Other STD 21 Preg Induced DM 3 Preg HTM 5 Polycystic Ovarian Synd 29 Oligoovulatory 17 Diabetes 2 Undetermined 44 Transplant 7

[0484] The Chi Square analysis gave the following ranking of variables: Name Input # Hist of Infert 13 Infertility 42 Medication History 35 Herpes 19 Ovulatory 14 Dysmenorrhea 40 Dyspaarunia 41 Packs/Day 8 Ectopic Preg. 26 Current Exod. Hormones 36 Menstrual Abnormalities 39 Anovulatory 15 Past history of Endo 33 Fibroids 25 Hormone induced 18 #Preg 10 Gyn Cancer 31 Hist of Pelvic Surgery 34 PID 23 Uterine/Tubal Anomalies 24 #Abort 12 #Birth 11 Other STD 21 Abdominal Pain 38 Unknown 16 Vag Infections 22 Abnormal PAP/Dysplasia 30 Dysfunctional Uterine Bld 27 Oligoovulatory 17 Polycystic Ovarian Synd 29 Autoimmune Disease 6 Genital Warts 20 Other Symptoms 45 Ovarian Cyst 28 Other history 32 Pelvic Pain 37 age(preproc) 1 Preg Induced DM 3 Preg HTM 5 Adnnexal masses/Thickening 43 Undetermined 44 Diabetes 2 Drug Use 9 Hypertension 4 Transplant 7

[0485] The variables chosen in the variable selection procedure were as follows, showing the ranking from the final sensitivity analysis: Name Input # Hist of Infert 13 Dyspaarunia 41 Ectopic Preg 26 Packs/Day 8 Hist of Pelvic Surgery 34 Medication History 35 Ovulatory 14 Menstrual Abnormalities 39 Oligoovulatory 17

[0486] The comparison of the Score network to the Endo present network can be performed by forcing a threshold on the desired score output to produce an Endo present comparison. The results for the score and the pat07 networks are shown below. NETWORK PAT07 ADH07 Sensitivity .828179 .825083 Specificity .598174 .473430 PPV .732523 .696379 NPV .723757 .649007 Odds Ratio 2.695 2.148148

Conclusions

[0487] The set of variables identified in this Example appear to be reasonable. The automated variable selection methodology appears to function properly. The choice of variables is well predicted by the sensitivity analysis.

EXAMPLE 9 This Example Shows the Reprodicibility of the Process Provided Herein.

[0488] Methodology Used

[0489] Software used for the selection of important variables for Adhesions and Score was modified to operate with the Endo present desired output. The software was further modified to allow it to be run in the general case instead of needing to be recompiled for each specific test.

[0490] The run was made on the Endo Present variable in the same fashion as the runs for Adhesion and score. This included using a consensus of 4 networks during the variable selection process. The training data was partitioned into five partitions during the training process, generating a total of 20 networks for each evaluation of the current set of variables being tested.

[0491] The results of runs with different random number seeds indicated that the number of networks in the consensus might need to be increased.

[0492] Two additional variable selection runs were made with a consensus of 10 networks used during the process. In this case, a total of 50 networks were trained to evaluate a single combination of variables. Two separate runs were made in this fashion with only the random starting seed changing.

[0493] From these final two variable selection runs, a set of eight networks were trained for each of the sets of variables (pat08, pat09), to allow their performance to be evaluated on new data (not included in the original 510 record database). Statistics on the performance of these networks were generated so that they could be compared to the original pat07 consensus nets.

Results

[0494] In each case where different random number seeds were used, the variable selection process found a different set of important variables. When the number of networks in the consensus was increased to 10, the variables common in the different runs increased.

[0495] Many of the original 14 variables used for pat07 were confirmed as being important in the variable selection runs using 10 consensus nets. The final runs made on the selected variables were named pat08 and pat09.

[0496] The variables used in pat08 and pat09 consensus networks are shown below along with their sensitivity analysis rankings: INPUT PAT08 Variable Name Average 10: Past HX of Endo 1.525819 05: #Birth 1.489470 14: Dysmenorrhea 1.302913 12: Medication History 1.263276 11: Hist of Pelvic Surgery 1.235421 13: Pelvic Pain 1.192193 01: Age(preproc) 1.178076 04: Packs/Day 1.063709 06: Hist of Infert 0.943830 07: Hormone Induced 0.925489 16: Other Symptoms 0.879384 15: Infertility 0.873955 09: Abnormal PAP/Dysplasia 0.7061778 03: Preg HTN 0.576799 08: Herpes 0.441410 02: Diabetes 0.402080 06: Past HX of Endo 1.420401 04: #Birth 1.353489 01: age(preproc) 1.187359 09: Pelvic Pain 1.183929 10: Dysmenorrhea 1.141531 07: Hist of Pelvic Surgery 1.064250 03: Packs/Day 1.042488 11: Other Symptoms 0.780530 05: Herpes 0.699654 08: Medication History 0.623505 02: Preg HTN 0.502863

Conclusions

[0497] The variable selection process appears works well and has produced two alternative networks that work as well or better than the pat07 nets. The reason for this conclusion is that the performance statistics generated only on the training data appear slightly better for the pat07 then pat08 and pat09. Since the variable selection process carefully picks variables based on test set performance, the associated networks are not likely to have been overtrained. As a network becomes overtrained the typical characteristic is that the training example performance increases and the test set performance decreases. Thus the higher performance of pat07 may be the result of slight overtraining.

[0498] While the variable selection process appears to have produced two alternative selections on the same training data, the performance of the two selections appears to be very similar. This is based on the test set performance of the final variable selections for the two runs. It has become clear that when two variables are closer in their relative performance, then random factors can influence their relative ranking. The random factors in the variable selection runs included the random starting points and the use of added noise on the inputs during training. The random noise has been shown to aid in producing better generalization (translation: test set performance). As the number of networks in the consensus increases, the effects of the random influences are decreased.

[0499] The determination of a set of variables that produces a high quality network seems to be addressed by the variable selection process. As more combinations of variables that work successfully are enumerated, it is evident that certain variables or combinations of variables are essential to good performance.

EXAMPLE 10 Evaluation of the Elimination of Past History of Endometriosis and History of Pelvic Surgery on Diagnostic Performance.

[0500] The purpose of this Example was to determine the importance of ‘Past history of endometriosis’ and ‘Past history of pelvic surgery’ variables in evaluating a patient's risk of having endometriosis, and to provide an alternative means (different from sensitivity analysis) to measure the importance of any given variable in predicting the outcome.

Tasks:

[0501] 1. Apply the variable selection process excluding the ‘Past history of endometriosis.

[0502] 2. Repeat task (1) using different random seed variables for the variable selection process.

[0503] 3. For both sets of ‘endometriosis relevant variables’ identified in tasks (1) and (2) above, complete the consensus network training process.

[0504] 4. Repeat the above tasks (1), (2) and (3) excluding the ‘Past history of Pelvic surgery’ variable from the Endometriosis database.

[0505] 5. Repeat the above tasks (1), (2), and (3) excluding both the ‘Past history of endometriosis’ and the ‘Past history of endometriosis’ variables from the Endometriosis database.

Methodology Used

[0506] The variable selection software developed in Example 9 was used as the basis to generate results for each of Example 10. The software was modified so that the user could identify variables that would be excluded from consideration based on the requirements of Example 10. This software was also modified to allow the reporting of classification performance for each of the sets of variables tested so that the effect of an eliminated variable could be more easily understood.

[0507] For each variable selection run that was made, parameters for the variable selection process were set as follows: Number of partitions: 5 Consensus networks: 10 Training example size: 510 Number of passes: 999

[0508] The ordering of database variables in the variable selection process was based on the sensitivity analysis and Chi square analysis. This ordering was the same as used in pat08 and pat09.

[0509] The networks trained for this Example are identified as follows (the two nets have different random seeds); Past Hist. of Endo eliminated: pat10, pat11. Hist. of Pelvic Surgery eliminated: pat12, pat13. Both variables eliminated: pat14, pat15.

[0510] Once the variable selection process was completed for each of the combinations of variables and random seeds, a set of eight networks were trained using the selected variables identified. Each of these networks was trained on the complete 510 record database. From these training runs, a consensus of the outputs was generated in an Excel spreadsheet so that the performance of each of the networks could be evaluated.

Results

[0511] The typical performance of a consensus of networks was estimated using the holdout method with a partition of 5. When all variables were available, as in pat08 and pat09, the classification performance was estimated to be 65.23%.

[0512] When the past history of endometriosis variable was eliminated from consideration (pat10 and pat11), the performance was estimated at 62.47%. This represents a drop of 2.76%.

[0513] When the history of pelvic surgery variable was eliminated from 25 consideration (pat12 and pat13), the performance was estimated at 64.52%. This represents a drop of only 0.72%.

[0514] When both variables were eliminated from consideration (pat14 and pat15), the performance was estimated to be 62.43%. This represents a drop of 2.80%. This is only slightly worse than just eliminating past history of endometriosis and appears to be consistent with other results based on the assumption that the variables are independent (are not correlated).

Conclusions

[0515] While history of pelvic surgery was used by the neural networks when it was available, the effect of eliminating this variable was minimal. The neural networks appear to be able to compensate for the elimination of this variable by using other information.

[0516] The removal of Past history of Endometriosis was significant. This variable was always at the top of the list in any sensitivity analysis. Its elimination caused about a 2.76% drop in performance over the average when all variables were available for use. Given that the average performance is estimated at 65.23%, and 50% can be achieved by chance, this represents an effective drop in performance of 18.12%.

[0517] When both variables were eliminated, there does not appear to be any significant drop in performance, which indicates there was no interaction between these two variables. This process of eliminating a variable and running the variable selection process appears to be a good approach to determining the true value of a given variable. It should be noted that there are two variables that are important to the diagnosis, but are highly correlated, the elimination of only one would have little effect since the network would compensate by using the other. It is only when both were eliminated that their value becomes clear.

EXAMPLE 11 Evaluation of the Elimination of Pelvic Pain and Dysmenorrhea on Diagnostic Performance Requirements

[0518] Goals:

[0519] 1. To determine the importance of ‘Pelvic Pain’ and “Dysmenorrhea’ variables in evaluating a patient's risk of having endometriosis.

[0520] 2. To provide a separate mechanism (different from sensitivity analysis) to measure the importance of any given variable in predicting the outcome.

[0521] Tasks:

[0522] 1. Apply the variable selection process described herein.

[0523] 2. Repeat task (1) using different random seed variables for the variable selection process.

[0524] 3. For both sets of ‘endometriosis relevant variables’ identified in tasks (1) and (2) above, and complete the consensus network training process.

[0525] 4. Repeat the above tasks (1), (2) and (3) excluding the ‘Dysmenorrhea’ variable from the Endometriosis database.

[0526] 5. Repeat the above tasks (1), (2), and (3) excluding both the ‘Pelvic Pain’ and the ‘Dysmenorrhea’ variables from the Endometriosis database.

Methodology Used

[0527] The variable selection software developed in Example 9 was used as the basis to generate results for each of these tasks. For each variable selection run that was made, parameters for the variable selection process were sat as follows; Number of partitions: 5 Consensus networks: 10 Training example size: 510 Number of passes: 999

[0528] The ordering of database variables in the variable selection process was based on the sensitivity analysis and Chi square analysis. This ordering was the same as used in pat08 and pat09. The networks trained for this task are identified as follows (the two nets have different random seeds); Pelvic Pain eliminated: pat16, pat17, pat17A Dysmenorrhea eliminated: pat18, pat19. Both variables eliminated: pat20, pat21. Four variables (EXs. 11 and 12): pat22, pat23, and pat23A

[0529] Once the variable selection process was completed for each of the combinations of variables and random seeds, a set of eight networks were trained using the selected variables identified. Each of these networks was trained on the complete 510 record database. From these training runs, a consensus of the outputs was generated in an Excel spreadsheet so that the performance of each of the networks could be evaluated.

Results

[0530] The typical performance of a consensus of networks was estimated using the holdout method with a partition of 5. When all variables were available, as in pat08 and pat09, the Classification performance was estimated to be 65.23%.

[0531] When the pelvic pain variable was eliminated from consideration (pat16 and pat17), the performance was estimated at 61.03%. This represents a drop of 4.20%.

[0532] When the dysmenorrhea variable was eliminated from consideration (pat18 and pat19), the performance was estimated at 63.44%. This represents a drop of only 1.79%.

[0533] When both variables were eliminated from consideration (pat20 and pat21), the performance was estimated to be 61.22%. This represents a drop of 4.00%. This is better than when pelvic pain was eliminated only. This suggests that the performance drop for pelvic pain is overstated. The best performing network that did not include pelvic pain had a performance of 62.29%, which gives a drop of 2.94%. This would be more reasonable an estimate given the performance when both were eliminated.

Conclusions

[0534] With the four variables tested, the ranking of the variables in order of importance is as follows: Pelvic pain 2.94% -4.20% drop Past hist. of endo 2.76% drop Dysmenorrhea 1.79% drop Hist. of pelvic surg 0.72% drop

[0535] This process of eliminating a variable and running the variable selection process is a good approach to determining the value of a given variable. It should be noted that if there were two variables that were important to the diagnosis, but were highly correlated, the elimination of only one would have little effect since the network would compensate by using the other. It is only when both were eliminated that their true value would become clear.

EXAMPLE 12

[0536] Training of Neural Network to Differentiate Mild Versus Severe Endometriosis Goals:

[0537] 1. To train a consensus of networks which differentiates between minimal/mild versus moderate/severe endometriosis.

[0538] Task:

[0539] 1. Train networks to AFS score as follows:

[0540] positive=Endo Stage III or IV

[0541] negative=No Endo, Endo Stage I or II

[0542] 2. Apply the variable selection process described in Method for Developing Medical and Biochemical Tests Using Neural Networks of the Endometriosis database.

[0543] 3. Repeat task (2) using different random seed variables for the variable selection process.

[0544] 4. Compare variables selected in (2) and (3) above before proceeding. If selected set of variables differ widely, repeat task (2) using different random seed weights.

[0545] 5. Train final consensus networks for variables selected in (2) and (3) above.

[0546] 6. Repeat steps (2) through (5) using only the subset of the endometriosis database for which Endo was present in the patient.

Methodology Used

[0547] The variable selection software developed in EXAMPLE 10 and modified in EXAMPLE 11, was used as the basis to generate results for each of the tasks in this example.

[0548] For each variable selection run that was made, parameters for the variable selection process were set as follows; Number of partitions: 5 Consensus networks: 20 Training example size: 510 (290 for step (6)) Number of passes: 999

[0549] The ordering of database variables in the variable selection process was based on the sensitivity analysis an chi square analysis run specifically for the new target output described in Example 1. The networks trained for this Example are identified as follows (the two nets have different random seeds);

[0550] Nets trained on full database: AFS01 and AFS02

[0551] Nets trained on Endo present subset: AFSEP1 and AFSEP2.

[0552] Once the variable selection process was completed for each of the combinations of variables and random seeds, a set of eight networks were trained using the selected variables identified. Each of these networks for AFS01 and AFS02 variables were trained on the complete 510 record database. Each of the networks for AFSEP1 and AFSEP2 variables were trained on the 291 records for which the endo present variable was positive. From these training runs, a consensus of the outputs was generated in an Excel spreadsheet so that the performance of each of the networks could be evaluated.

Results

[0553] The count of variables found in the reduced subset run was smaller that for the runs on the full training example. The typical performance of a consensus of networks was estimated using the holdout method with a partition of 5. The typical classification performance for the AFS run using the full training example was 77.22549%. The typical classification performance on the endo present subset was 63.008621%. If all examples were classified as negative, the performance for the full training example would be 78.82% and 65.29% for the subset. By changing the cutoff values for positive and negative classification better performance than suggested by these numbers can be achieved.

Conclusions

[0554] The results of the variable selection runs for the full training example and the subset of endo present examples suggests that the size of the training example is of importance in the determination of the important variables. It is clear that as the size of the training example increases, more variables will be considered important. This result can also be interpreted as an indication that more training data will improve the variable selection process and also the overall performance of the consensus networks used in building the diagnostic test.

EXAMPLE 13 Variable Selection and Development of Neural Nets for Predicting Pregnancy Related Events and Improvement of the Performance of Tests for Fetal Fibronectin

[0555] The Fetal Fibronectin Enzyme Immunoassay (fFN ELISA) detects the presence or absence of fetal fibronectin (fFN) in cervicovaginal secretions (see, U.S. Pat. No. 5,468,61 9). Detection of fFN in cervicovaginal secretions of symptomatic pregnant women between 24 and 34 completed weeks gestation is associated with preterm delivery. This test is used to predict impending delivery within 7 or 14 days of sampling. For prediction of delivery within 14 days for sampling of fFN, the negative result is greater than 99% accurate. The positive result is more difficult to interpret, and the positive predictive value is less than 20%.

[0556] Neural networks were trained to assess the risk of preterm delivery using over 700 examples of pregnant women who were symptomatic for preterm delivery. Each example contained a multitude of information about that patient, including symptoms, reproductive history and other factors. Neural networks were trained to recognize complex patterns of interactions between these factors that indicate when a woman is at risk for preterm delivery. These neural networks are contained in the Preterm Delivery Risk Assessment software, which augments the fFN ELISA test result by decreasing false positive observations.

[0557] A. Variables

[0558] The following are variables based on patient input data. Neural networks using all or selected subsets of these variables may be generated. Combinations of at least three of these variables may be used in conjunction with decision-support systems, particularly neural nets to predict risk of preterm delivery or impending delivery. The inputs for the variables are either yes, no, no answer, or a text input, such as age. The variables, listed by type are as follows:

[0559]1 Age

[0560] Ethnic origin variables:

[0561]2 EthOrg1: Caucasian;

[0562]3 EthOrg2: Black;

[0563]4 EthOrg3: Asian;

[0564]5 EthOrg4: Hispanic;

[0565]6 EthOrg5: Native American; and

[0566]7 EthOrg6: Other than the above.

[0567] Marital status variables:

[0568]8 MarSt1: Single;

[0569]9 MarSt2: Married;

[0570]10 MarSt3: Divorced/Separated;

[0571]11 MarSt4: Widowed;

[0572]12 MarSt5: Living with partner; or

[0573]13 MarSt6: Other than those listed above.

[0574] Education variables:

[0575]14 Edu0: Unknown;

[0576]15 Edu1: <High School;

[0577]16 Edu2: High School Graduate; or

[0578]17 Edu3: College/trade.

[0579] Patient complaint variables:

[0580]18 PATIENT COMPLAINT #1 Patient has Uterine Contractions with or without pain;

[0581]19 PATIENT COMPLAINT #2 Patient has intermittent lower abdominal pain, dull, low backache, pelvic pressure;

[0582]20 PATIENT COMPLAINT #3 Patient has bleeding during the second or third trimester;

[0583]21 PATIENT COMPLAINT #4 Patient has menstrual-like or intestinal cramping;

[0584]22 PATIENT COMPLAINT #5 Patient has change in vaginal discharge or amount, color, or consistency; or

[0585]23 PATIENT COMPLAINT #6 Patient is not “feeling right”.

[0586] Variables from physician tests and assessments:

[0587]24 Pooling refers to visual assessment to determine whether amniotic fluid has leaked into the vagina (see, e.g., Chapter 36, Section 18, p. 657 in Maternal Fetal Medicine: Principle and Practice, 2nd Edition, Creasy, R. F. et al., eds., W. B. Saunders & Co. (1989));

[0588]25 Ferning refers to the results of a test to detect the pattern formed when amniotic fluid is present in a cervical sample smeared on a clean slide and allowed to air dry (see, e.g., Chapter 36, Section 18, p. 657 in Maternal Fetal Medicine: Principle and Practice, 2nd Edition, Creasy, R. F. et al., eds., W. B. Saunders & Co. (1989));

[0589]26 Nitrazine refers to results from a known test used to measure the pH of amniotic fluid that has leaked into the vagina (see, e.g., Chapter 36, Section 18, p. 657 in Maternal Fetal Medicine: Principle and Practice, 2nd Edition, Creasy, R. F. et al., eds., W. B. Saunders & Co. (1989));

[0590]27 estimated gestational based (EGA) on last period (LMP);

[0591]28 EGA by sonogram (SONO);

[0592]29 EGA by Best-EGA is the best of the EGA by SONO and EGA by LMP determined as follows:

[0593] if EGA by SONO is <13 weeks, then EGA best is EGA SONO;

[0594] if the difference by EGA by LMP and EGA by SONO is >2 weeks, then EGA best is EGA by SONO; otherwise EGA best is EGA by LMP;

[0595]30 EGA at Sampling refers to the EGA when fFN sampled;

[0596]31 CD INTERP, which refers to cervical dilatation (interpreted values - i.e. based on physicians estimates) where the number will be between 0 and 10 cm and is determined from the physicians response;

[0597]32 Gravity, which refers to the number of time woman has been pregnant;

[0598]33 Parity-term, which refers to the number of term births;

[0599]34 Parity-preterm, which refers to the number of preterm births;

[0600]35 Parity-abortions, which refers to the number of pregnancies ending in spontaneous or elective abortions;

[0601]36 Parity-living, which refers to the number of living children;

[0602]37 Sex within 24 hrs prior to sampling for fFN;

[0603]38 Vaginal bleeding at time of sampling;

[0604]39 Cervical consistency at time of sampling; and

[0605]40 UC INTERP, which refers to uterine contractions per hour as interpreted by the physician.

[0606] Complications

[0607]41 0 COMP No previous pregnancies;

[0608]42 1 COMP have had at least one previous pregnancy without complications;

[0609]43 2nd comp at least one preterm delivery (delivery prior to 35 weeks);

[0610]44 3rd comp at least one previous pregnancy with a premature rupture of membrane (PROM);

[0611]45 4th comp at least one previous delivery with incompetent cervix;

[0612]46 5 COMP at least on previous pregnancy with pregnancy induced hypertension (PIH)/preeclampsia;

[0613]47 6 COMP at least one previous pregnancy with spontaneous abortion prior to 20 weeks;

[0614]48 OTHER COMP at least one previous pregnancy with a complication not listed above; and

[0615]49 RESULT—fFN ELISA qualitative test result (if positive value is 1, if negative value is 0).

[0616] The variable selection protocol has been applied to these variables for selected outcomes, and the results are set forth below. Exemplary neural nets are provided.

[0617] B. A first set of neural networks demonstrating that the methods herein can be used to predict pregnancy related events

[0618] EGA1-EGA4

[0619] For these nets the preterm delivery defined as less than or equal to 34 weeks, 0 days. The other nets herein (described below) define preterm delivery as less than or equal 34 weeks, 6 days.

[0620] Data was collected from the over 700 test patients involved in a clinical trial of the assay described in U.S. Pat. No. 5,468,61 9. Variable selection was performed without fetal fibronectin (fFN) test data. The final networks, designate EGA1-EGA4 were trained with the variables set forth in the table below.

[0621] EGA1-EGA4 represent neural networks used for variable selection. For EGA1, the variable selection protocol was performed a network architecture with 8 inputs in the input layer, three processing elements in the hidden layer, and one output in the output layer. EGA2 is the same as EGA1, except that it is 9 inputs in the input layer.

[0622] EGA3 has 7 inputs in the input layer, three processing elements in the hidden layer, and one output in the output layer. EGA4 is the same as EGA1, except that it is 8 inputs in the input layer.

[0623] The variables selected are as follows: EGA1 EGA2 EGA3 EGA4 — fFN — fFN Ethnic Origin 1 Ethnic Origin 4 (Caucasian) (Hispanic) EGA Sonogram Marital Status 5 (living with partner) EGA Best Marital Status 6 (physician's determination of (other) estimated gestational age) EGA Sampling EGA Best Cervical dilation interpretation Cervical dilation interpretation Vaginal bleeding Vaginal bleeding (at time of sampling) (at time of sampling) 1 complications Other complications (prev. preg w/o complications) (prev. preg. w complications) Other complications (prev. preg. w complications)

[0624] Final consensus network performance Net TP TN FP FN SN SP PPV NVP OR EGA1 35 619 92 17 67.3 87.0 27.6 97.3 6.0 EGA2 37 640 71 15 71.2 90.0 34.3 97.7 7.9 EGA3 36 602 109 16 69.2 84.7 24.8 97.4 5.1 EGA4 32 654 57 20 61.5 92.0 36.0 87.0 8.9 fFN 31 592 119 21 59.6 83.3 20.7 96.6 7.3 #NPV = negative predictive value; OR = odds ratio (total number correct/total number correct answers); and fFN = the results from the ELISA assay for fFN.

[0625] The results show that the network EGA4, the neural net that includes seven patient variables and includes the fFN ELISA assay and that predicts delivery at less than 34 weeks, has far fewer false positives than the fFN ELISA assay. In addition, the number of false positives was reduced by 50%. Thus, incorporation of the fFN test into a neural net improved the performance of the fFN ELISA assay. All of the neural nets performed better than the fFN test alone.

[0626] Thus, the methods herein, can be used to develop neural nets, as well as other decision-support systems, that can be used to predict pregnancy related events.

[0627] C. Neural network prediction of delivery before 35 completed weeks of gestation—EGA5 and EGA6

[0628] The fFN-NET database was used for all the experiments; organization of variables and order of variables was the same as described herein. Two variable selection runs were performed on the training data to determine the important variables to be used for the consensus runs. In each of the runs the hidden layer contained 5 processing elements. This choice was based on the use of the variable selection process to determine the best size of the hidden layer. Variable selection was run with different numbers of hidden units in the neural network. The performance of the final selection of variables was compared for each different hidden layer configuration. Five hidden units were found to give the best performance. Each run used a partition of 5 and a consensus of 10 networks. The top 10 variables were examined during the run before a variable was selected to be in the selection.

[0629] During these runs the biochemical test variable, fFN result, was not included in the possible variables for variable selection.

[0630] The resulting choices of variables were then re-evaluated using a consensus of 20 networks so that the two separate runs could be compared on an equal basis. Then the fFN result variable was added to the selected variables and the selections were re-evaluated using a consensus of 20 networks. This allowed the effect of the biochemical test on the performance to be determined. The final consensus training runs, using 8 networks, were made using all available data for training and the best performing set of variables from the above evaluations with the fFN result variable included.

[0631] 1. Variable selection

[0632] Using the same database described above for EGA1-EGA4, the variable selection protocol was applied as described above, except that the variable selection procedure was applied in the absence of the fFN test result. Since it is known that the results of this test are highly predictive of preterm or impending delivery, it was excluded from the variable selection procedure in order to eliminate its overriding influence, and to thereby select the important variables from among the other 48 variables.

[0633] Application of the variable selection procedure to the 48 variables resulted in selection of the following variables:

[0634] 1. Ethnic Origin 1: Caucasian (i.e., yes or no);

[0635] 2. Marital Status 5: living with partner (yes or no);

[0636] 3. EGA by sonogram

[0637] 4. EGA at sampling

[0638] 5. estimated date of delivery by best

[0639] 6. cervical dilatation (CM)

[0640] 7. Parity-preterm

[0641] 8. vaginal bleeding at time of sampling

[0642] 9. cervical consistency at time of sampling ; and

[0643] 10. previous pregnancy without complication.

[0644] 2. Neural nets

[0645] Using these variables two consensus networks were trained. One, designated EGA5, was trained without including the results of the fFN ELISA test result, and the other, designated EGA6, was trained with the results of the fFN ELISA test result.

[0646]FIG. 17, which represents EGA6, is a schematic diagram of an embodiment of one type of neural network 10 trained on clinical data of the form used for the consensus network (FIG. 10) of a plurality of neural networks. The structure is stored in digital form, along with weight values and data to be processed in a digital computer. This neural network 10 contains three layers, an input layer 12, a hidden layer 14 and an output layer 16. The input layer 12 has eleven input preprocessors 17-27, each of which is provided with a normalizer (not shown in the figure, see table below), which generates a mean and standard deviation value to weight the clinical factors and which are input into the input layer. The mean and standard deviation values are unique to the network training data. The input layer preprocessors 17-27 are each coupled to first and second and third processing elements 28, 29 and 30, of the hidden layer 14 via paths 31-41, 42-52 and 53-63 so that each hidden layer processing element 28, 29 and 30 receives a value or signal from each input preprocessor 17-27. Each path is provided with a unique weight based on the results of training on training data. The unique weights 64-74, 75-85, and 86-96 (see, also Table below) are non-linearly related to the output and are unique for each network structure and initial values of the training data. The final value of the weights are based on the initialized values assigned for network training. The combination of the weights that result from training constitute a functional apparatus whose description as expressed in weights produces a desired solution, or more specifically a risk assessment for preterm delivery before 35 weeks.

[0647] The hidden layer 14 is biased by bias weights 97, 98 and 99 provided via paths 100, 101, and 102 to the processing elements 28, 29 and 30. The output layer 16 contains two output processing elements 103, 104. The output layer 16 receives input from the hidden layer processing elements 28, 29 and 30 via paths 105-110. The output layer processing elements 103, 104 are weighted by weights 111-116. The output layer 16 is biased by bias weights 117, 118 provided via paths 119 and 120 to the processing elements 103 and 104.

[0648] The preliminary risk of delivery before 35 completed weeks of gestation is the output pair of values A and B from the two processing elements 103 and 104. The values are always positive between zero and one. One of the indicators is indicative of a risk of preterm delivery. The other is an indicator of the absence of such risk. While the output pair A, B provide generally valid indication of risk, a consensus network of trained neural networks provides a higher confidence index. EGA 6 contains 8 such trained neural networks.

[0649] The following tables set forth the values of the individual weights for each of the 8 consensus networks, designed EGA6_0 through EGA6_7. EGA 6_0 Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 1st 2nd 0 0.412437 −0.143143 −1.885393 −0.9598620 0.945025 1 2.041149 −0.021533 0.162966 −4.839373 4.875033 2 1.224530 0.971002 −0.590964 −2.524601 2.524054 3 0.575975 −3.249891 −2.814656 2.583483 −2.561113 4 0.784864 0.600535 −0.300794 5 1.075542 0.1601136 0.549237 6 −1.047227 0.047396 0.905172 7 −0.966051 0.163156 0.630888 −0.193761 −0.149381 0.163185 9 −0.680552 −2.362585 1.365873 10 1.010706 −3.633732 −1.443890 11 1.728520 −0.590057 0.878588

[0650] EGA 6_1 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 2.675421 −0.552641 0.673642 0.183663 0.197713 1 −1.181347 0.284937 0.720041 −3.170281 3.095180 2 −0.178288 −1.102137 0.655263 3.795940 −3.747696 3 1.048956 −0.941387 −1.733601 −6.612447 6.498429 4 0.033454 0.927974 2.987905 5 −1.161823 1.217736 1.014796 6 6.168329 2.549298 −1.321217 7 −1.560728 −1.637513 −1.160331 8 1.671384 3.395848 −0.117778 9 0.416004 1.452099 −0.246268 10 −2.228914 1.834281 0.748248 11 −3.687070 1.693113 −0.492244

[0651] EGA 6_2 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 −1.013347 1.392476 3.390216 1.093532 −1.084186 1 −3.020375 0.554074 2.172394 −1.633913 1.632363 2 −0.899928 1.928149 0.466793 −3.099829 3.091530 3 −8.108200 0.583508 0.030467 −2.860816 2.845121 4 3.260629 9.249855 0.577971 5 −0.567385 1.008019 0.196682 6 −2.382355 −2.942121 0.568323 7 −1.996632 −2.203792 −0.852693 8 0.217054 −0.230021 −0.710703 9 0.380832 −0.276078 −1.551226 10 1.933148 0.603005 −0.856832 11 −1.922944 −1.396864 −2.356188

[0652] EGA 6_3 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 1.493395 −2.294246 2.173191 −1.417536 1.413825 1 3.959154 0.635345 0.976585 −2.381441 2.355649 2 0.396474 −1.310699 0.708136 2.652994 −2.638396 3 −0.404996 −0.906109 1.164319 −3.176520 3.136459 4 −0.113969 −0.611193 −0.896189 5 0.665321 −1.422789 0.184973 6 1.628547 2.765793 0.315556 7 −0.673276 1.645794 −0.975604 8 −2.422190 1.272992 0.612878 9 −1.494859 2.990876 0.002188 10 −0.316486 −0.614556 −0.993159 11 −3.208810 −0.869353 −3.219709

[0653] EGA 6_4 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 1.595199 −1.400935 −1.254950 −1.033706 1.017989 1 1.597543 1.434936 −1.886380 −3.899452 −3.915186 2 0.424391 −0.524230 0.974168 2.759211 −2.750812 3 1.340851 −0.063071 −5.226755 −2.077351 2.087066 4 0.145379 −3.090206 −1.188423 5 0.569193 −1.556114 −1.835809 6 0.380544 3.770102 −1.193652 7 −0.414611 2.391878 −0.326348 8 0.082901 0.821397 −2.173482 9 −0.893175 0.099641 −1.615205 10 0.312568 −0.034908 −1.900884 11 −1.068789 1.023022 −1.393905

[0654] EGA 6_5 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 2.503198 −2.428604 −0.130730 −2.186942 2.173897 1 −2.192063 −3.125744 3.638620 −2.776665 2.660086 2 1.579702 0.833396 1.472541 2.737514 −2.713886 3 −0.067358 0.422544 −1.196156 −1.586596 1.647172 4 1.298254 −3.568407 −1.013145 5 1.992165 −3.716873 −0.868908 6 −4.089348 2.595805 3.020147 7 −2.734360 2.001578 −0.018092 8 −1.668519 −0.383332 −3.587072 9 −1.886910 0.268403 −0.229832 10 −1.519840 −1.147216 1.671855 11 −1.200146 3.289453 −4.163397

[0655] EGA 6_6 Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 −1.443015 0.865813 0.382970 −2.388151 2.408045 1 −1.582839 0.593947 0.830775 4.015757 −4.056962 2 −1.119793 −0.355416 0.803208 −2.574057 2.594654 3 2.549989 0.295836 0.454763 −3.381956 3.430132 4 −3.080358 −3.033361 1.023391 5 −2.302934 0.508087 −0.703378 6 −0.040867 −2.352165 −1.982702 7 1.082370 3.718414 −4.853944 8 −0.564883 −4.419714 −2.375676 9 0.953993 −2.047337 −0.481060 10 −1.062311 0.216755 −2.037935 11 1.488106 −3.616466 −0.630520

[0656] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 1st 2nd 0 1.622433 1.633779 −3.852473 −0.748768 0.742163 1 0.043906 −0.351661 −2.431170 −3.003003 2.983215 2 0.732213 −0.661362 −0.746753 −2.218790 2.184970 3 −2.027060 1.301339 −1.768983 3.052581 −3.004828 4 1.521622 1.790975 −0.154270 5 1.677837 −0.625462 0.730582 6 −1.347791 −4.165056 −0.685942 7 −1.774773 5.494371 1.034300 8 −0.827799 1.789396 0.538103 9 −0.509971 −0.183482 1.543398 10 0.605369 2.345229 1.277570 11 0.691960 −3.950886 2.871648

[0657] The EGA6 preprocessing information is the same for each of the 8 neural networks in the consensus. The input is preprocessed by subtracting the mean value and dividing by the standard deviation. Node Mean Standard Deviation 1 0.399738 0.490166 2 0.011796 0.108036 3 30.593335 4.979660 4 30.709605 5.405745 5 30.278038 2.976036 6 0.490092 0.667659 7 0.178244 0.471996 8 0.198946 0.508406 9 1.823197 0.757205 10 0.399738 0.490166 11 0.195282 0.396677

[0658] EGA5 is a set of 8 consensus networks trained similarly to EGA6, except that the input variables did not include the variable representing the result of the fFN ELISA test. This network can be used as a point of care application to give immediate result to the clinician rather than the 24 to 48 hours required to process the fFN sample.

[0659] D. Neural network prediction of risk of delivery within 7 days—EGAD7 and EGAD7F

[0660] 1. Variable selection

[0661] Using the same database described above for EGA1-EGA6, the variable selection protocol was applied to prediction of the risk for delivery within 7 days of sampling for the fFN test. As noted above for EGA5 and EGA6, the variable selection procedure was applied in the absence of the fFN test result. Application of the variable selection procedure to the 48 variables resulted in selection of the following variables:

[0662] 1. Ethnic Origin 1: Caucasion (i.e., yes or no);

[0663] 2. Uterine contractions with or without pain (i.e., yes or no);

[0664] 3. Parity-abortions;

[0665] 4. Vaginal bleeding at time of sampling;

[0666] 5. Uterine contractions per hour;

[0667] 6. No previous pregnancies.

[0668] 2. Neural nets

[0669] Using these variables two consensus networks were trained. One, designated EGAD7 was trained without including the results of the fFN ELISA test result, and the other, designated EGAD7 f, was trained with the results of the fFN ELISA test result.

[0670]FIG. 18, which represents EGA7 f, is a schematic diagram of an embodiment of the neural network 10 trained on clinical data of the form used for the consensus network (FIG. 10) of a plurality of neural networks. The structure is stored in digital form, along with weight values and data to be processed in a digital computer. This neural network 10 contains three layers, an input layer 12, a hidden layer 14 and an output layer 16. The input layer 12 has seven input preprocessors 17-23, each of which is provided with a normalizer (not shown in the figure, see table below) which generates a mean and standard deviation value to weight the clinical factors which are input into the input layer. The mean and standard deviation values are unique to the network training data. The input layer preprocessors 17-23 are each coupled to first, second, third, fourth and fifth processing elements 24-28, respectively, of the hidden layer 14 via paths 29-35, 36-42, 43-49, 50-56, and 57-63 so that each hidden layer processing element 24-28, receives a value or signal from each input preprocessor 17-23. Each path is provided with a unique weight based on the results of training on training data. The unique weights 64-70, 71-77, 78-84, 85-91 and 92-98 (see, also Table below) are non-linearly related to the output and are unique for each network structure and initial values of the training data. The final value of the weights are based on the initialized values assigned for network training. The combination of the weights that result from training constitute a functional apparatus whose description as expressed in weights produces a desired solution, or more specifically a risk assessment of delivery within 7 days of sampling for the fFN ELISA test.

[0671] The hidden layer 14 is biased by bias weights 99, 100, 101, 102 and 103 provided via paths 104, 105, 106, 107 and 108 to the processing elements 24, 25, 26, 27 and 28. The output layer 16 contains two output processing elements 109, 110. The output layer 16 receives input from the hidden layer processing elements 24-28 via paths 111-120. The output layer processing elements 109, 110 are weighted by weights 121-130. The output layer 16 is biased by bias weights 131, 132 provided via paths 133 and 134 to the processing elements 109 and 110.

[0672] The preliminary risk of delivery within 7 days from sampling for the fFN ELISA test is the output pair of values A and B from the two processing elements 109 and 110. The values are always positive between zero and one. One of the indicators is indicative of a risk of delivery within 7 days. The other is an indicator of the absence of such risk. While the output pair A, B provide generally valid indication of risk, a consensus network of trained neural networks provides a higher confidence index. EGAD7 f contains 8 such trained neural networks.

[0673] The following tables set forth the values of the individual weights for each of the 8 consensus networks, designated EGAD7 f 0 through EGAD7 f 7: Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −0.204716 1.533574 1.452831 0.129981 −1.784807 0.854229 −0.883808 1 −1.843673 1.957059 −2.668371 −0.551016 1.505628 −5.294533 5.303048 2 −1.324609 0.258418 −1.280479 −0.476101 0.827188 −7.468771 7.514580 3 −1.281561 1.697443 6.865219 4.212538 −1.953753 −5.082050 5.003566 4 −1.159086 −0.345244 −4.689749 −0.406485 1.027280 4.014138 −4.006929 5 −2.042978 0.182091 2.612433 2.399196 −1.397453 −4.105859 4.105161 6 −4.076656 1.416529 0.979842 −2.589272 0.068466 7 −0.499705 −1.383732 −2.411544 0.173131 −1.919889

[0674] Input layer node hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 1.522090 6.396365 1.750606 0.650769 0.673423 0.282480 −0.222861 1 1.930314 0.027271 0.386927 1.602559 3.495371 −5.126995 4.888618 2 1.578675 −0.445222 0.352425 1.305894 1.703156 −3.751147 3.752025 3 1.821893 6.258497 1.140159 1.363783 −0.717021 −5.496184 5.687717 4 −4.599618 0.218248 0.385593 0.945824 0.644622 7.713794 −8.054935 5 −2.755846 −1.799000 2.162089 1.730335 −0.388646 −3.429169 3.706028 6 0.524701 1.669467 1.741620 3.956515 4.717868 7 −2.089663 −0.190423 −1.736970 0.085315 −1.010295

[0675] Input layer node hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 0.554749 4.029042 1.041783 0.687361 2.078268 0.718456 −0.756554 1 0.314365 −1.614025 4.560114 −0.197290 2.352322 3.339842 −3.185465 2 −1.992577 −1.810437 2.067243 −0.021868 0.041441 −5.596330 5.470991 3 −4.762585 −6.021220 3.627642 3.505088 1.221308 0.815486 −0.906961 4 8.422636 −1.088322 −1.229308 −2.513499 0.344056 −4.076351 4.165072 5 −0.547021 −6.256763 1.108255 1.341978 −0.074222 −7.385492 7.372295 6 0.581056 −2.916328 0.639607 0.894802 2.365492 7 1.260577 −1.583044 0.882731 −1.113407 −1.657523

[0676] Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 1.258939 0.778115 1.117508 −5.828234 3.275221 −0.174440 0.260818 1 1.038074 0.395096 −1.080656 −0.580291 −1.077984 −6.546609 6.515666 2 −2.174144 0.453939 −0.677622 −1.330231 −0.383479 −8.061748 8.067432 3 0.608410 2.262108 9.263388 4.024162 0.949009 4.938700 −5.060233 4 1.443697 −1.530076 −0.812837 1.549062 −1.594324 5.420476 −5.517191 5 −1.437676 0.749049 5.493512 −2.797146 −2.056666 −5.085781 5.127757 6 0.778191 1.397835 −3.635368 2.191902 −2.403500 7 −1.776540 −0.675587 0.115710 0.388203 −1.363938

[0677] Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −1.839879 0.255905 3.002103 0.886848 −0.485949 −1.461668 1.340040 1 −1.335228 −3.428058 0.665937 −1.072765 −0.372897 −1.862627 1.815599 2 0.062547 0.489211 0.946443 −3.642373 3.973801 5.835287 −5.699555 3 1.888678 1.928167 4.900952 1.928106 −1.866227 −5.463729 5.463984 4 −5.217631 −1.441138 −4.114171 0.629958 −1.615146 −5.726771 5.763464 5 −0.631546 1.735842 1.158419 0.638580 −3.276926 −7.193156 7.177080 6 −3.109977 −0.377960 1.372646 2.625961 −1.700064 7 −0.070132 1.763962 −2.234798 −1.165563 −1.845262

[0678] Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −1.456277 1.321048 1.214385 0.069355 −0.206125 −1.581118 1.811097 1 1.988970 −2.788917 1.700144 −3.790842 0.760984 −3.282460 2.842431 2 −0.889522 −1.748239 0.798888 −0.481237 0.248333 −6.391959 6.435954 3 15.258006 0.809204 4.071811 −3.751193 −6.873492 −6.817300 6.829902 4 −18.202002 −2.000871 0.021785 0.812317 0.713510 6.157183 −6.412641 5 0.440615 −0.470067 −1.578267 −0.216803 −3.315356 −7.015062 6.902892 6 −1.931575 0.510900 1.162408 −2.528233 1.405955 7 −3.758462 −0.570789 −6.338710 0.877703 −0.985724

[0679] Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 1.512437 −0.333348 −0.557454 −0.790704 0.049061 −0.918761 0.804829 1 −0.704182 −0.032274 −3.201322 −0.966885 −0.213225 −2.987857 2.999401 2 0.443652 −0.736894 −0.713164 −0.709163 −0.725865 −5.682138 5.675150 3 2.734173 0.555570 −2.071605 7.636067 −7.109310 4.989255 −4.851893 4 −4.066469 −0.039688 0.313027 −0.265136 0.152398 −4.107172 4.101486 5 0.943337 −0.658673 −0.079748 3.091015 −5.459067 −5.247225 5.231175 6 −0.211375 0.247671 −2.400778 2.663087 −1.717437 7 −1.291067 −4.507938 1.526173 −0.139780 −0.451653

[0680] Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 0.580523 0.319374 −0.660897 1.072931 −0.522045 −0.833235 1.016355 1 0.432923 3.916608 0.386343 −1.324510 −1.566712 −4.472839 4.433871 2 −0.312324 3.099275 0.344633 −3.254393 −1.081114 −4.873536 4.919722 3 4.019378 −5.440501 −9.105190 1.955846 −2.152612 4.971172 −5.215318 4 −0.355344 0.495595 0.543102 −2.001959 −0.989721 −3.436097 3.478752 5 −1.585942 −3.885213 −2.778485 1.068593 −1.697807 −4.098137 4.165162 6 −0.209687 −0.646458 −2.399903 0.177487 2.339257 7 −8.951553 −1.471208 0.725651 −2.732204 1.538870

[0681] The EGAD7F preprocessing information is the same for each of the 8 neural networks in the consensus. The input in preprocessed by subtracting the mean value and dividing by the standard deviation. Node Mean Standard Deviation 1 0.399738 0.490166 2 0.517693 0.500015 3 0.621232 1.030720 4 0.198946 0.508406 5 2.144928 2.291734 6 0.281782 0.450163 7 0.195282 0.396677

[0682] EGAD7 is a set of 8 consensus networks trained similarly to EGAD7 f, except that the input variables did not include the variable representing the result of the fFN ELISA test. This network can be used as a point of care application to give immediate result to the clinician rather than the 24 to 48 hours required to process the fFN sample.

[0683] E. Neural network prediction of risk of delivery within 14 days—EGAD14 fand EGAD14

[0684] 1. Variable selection

[0685] Using the same database described above for EGA1-EGAD7, the variable selection protocol was applied to prediction of the risk for delivery within 14 days of sampling for the fFN test. As noted above for EGA5, EGA6 and EGAD7, the variable selection procedure was applied in the absence of the fFN test result. Application of the variable selection procedure to the 48 variables resulted in selection of the following variables:

[0686] 1. Ethnic Origin 4: Hispanic (i.e., yes or no);

[0687] 2. Marital Status 5: living with partner;

[0688] 3. Uterine contractions with or without pain (i.e., yes or no);

[0689] 4. Cervical dilatation;

[0690] 5. Uterine contractions per hour;

[0691] 6. No previous pregnancies.

[0692] 2. Neural nets

[0693] Using these variables two consensus networks were trained. One, designated EGAD14 was trained without including the results of the fFN ELISA test result, and the other, designated EGAD14 f, was trained with the results of the fFN ELISA test result.

[0694]FIG. 18, which represents EGAD14 f (as well as EGAD7 f), is a schematic diagram of an embodiment of the neural network 10 trained on clinical data of the form used for the consensus network (FIG. 10) of a plurality of neural networks. The structure is stored in digital form, along with weight values and data to be processed in a digital computer. This neural network 10 contains three layers, an input layer 12, a hidden layer 14 and an output layer 16. The input layer 12 has seven input preprocessors 17-23, each of which is provided with a normalizer (not shown in the figure, see Table, below) which generates a mean and standard deviation value to weight the clinical factors which are input into the input layer. The mean and standard deviation values are unique to the network training data. The input layer preprocessors 17-23 are each coupled to first, second, third, fourth and fifth processing elements 24-28, respectively, of the hidden layer 14 via paths 29-35, 36-42, 43-49, 50-56, and 57-63 so that each hidden layer processing element 24-28, receives a value or signal from each input preprocessor 17-23. Each path is provided with a unique weight based on the results of training on training data. The unique weights 64-70, 71-77, 78-84, 85-91 and 92-98 (see, also Table below) are non-linearly related to the output and are unique for each network structure and initial values of the training data. The final value of the weights are based on the initialized values assigned for network training. The combination of the weights that result from training constitute a functional apparatus whose description as expressed in weights produces a desired solution, or more specifically a risk assessment of delivery within 14 days of sampling for the fFN ELISA test.

[0695] The hidden layer 14 is biased by bias weights 99, 100, 101, 102 and 103 provided via paths 104, 105, 106, 107 and 108 to the processing elements 24, 25, 26, 27 and 28. The output layer 16 contains two output processing elements 109, 110. The output layer 16 receives input from the hidden layer processing elements 24-28 via paths 111-120. The output layer processing elements 109, 110 are weighted by weights 121-130. The output layer 16 is biased by bias weights 131, 132 provided via paths 133 and 134 to the processing elements 109 and 110.

[0696] The preliminary risk of delivery within 14 days from sampling for the fFN ELISA test is the output pair of values A and B from the two processing elements 109 and 110. The values are always positive between zero and one. One of the indicators is indicative of a risk of delivery within 14 days. The other is an indicator of the absence of such risk. While the output pair A, B provide generally valid indication of risk, a consensus network of trained neural networks provides a higher confidence index. EGAD14 f contains 8 such trained neural networks.

[0697] The following tables set forth the values of the individual weights for each of the 8 consensus networks, designed EGAD14 f 0 through EGAD14 f 7. Input layer node/ hidden layer (nodes) output layer (nodes) weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −0.191126 1.174059 0.810632 0.148573 −2.437188 0.106355 −0.108766 1 −2.921661 −0.713076 1.312931 10.427816 1.824513 −2.220130 2.198498 2 −0.848702 1.614504 2.640692 −0.445807 1.218097 −2.016395 2.005455 3 −1.008667 0.138305 1.372127 0.788516 −3.114650 −4.365818 4.349520 4 −1.422990 −1.517308 −1.632533 −3.146550 0.256047 2.291882 −2.293527 5 −2.588523 −0.733381 0.992748 1.482687 1.197727 −4.864353 4.861522 6 −3.611756 −2.669159 3.364100 −1.806442 0.833890 7 −0.516151 −2.104245 −2.052761 −0.615030 −1.621589

[0698] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 0.396502 2.426709 0.752911 1.549394 −0.064008 −0.285667 0.714618 1 1.248711 2.179334 −0.016570 −0.040113 2.457661 −3.745954 3.884410 2 1.912210 0.937177 −1.742286 −2.094312 −1.165847 −4.912591 4.966647 3 −1.018760 −1.087528 −0.344108 0.384237 −1.077692 −7.433263 7.309962 4 1.090578 −2.229295 −0.890326 −1.334206 0.822185 2.080292 −2.595363 5 1.399831 −5.077936 −0.600345 4.128439 −1.715393 5.481619 −5.611861 6 2.241531 −4.673233 −0.209741 2.954158 −4.565109 7 0.077090 −0.194145 −4.391311 3.250038 −2.360049

[0699] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 0.286926 1.855804 0.103985 −2.590399 2.265841 1.540065 −1.592696 1 1.928731 0.410516 −2.015740 1.017801 2.088775 2.433105 −2.545955 2 −0.666312 −1.178337 1.227737 −1.471309 1.922938 −4.736276 4.903823 3 −2.716156 −2.328632 −0.566546 0.854688 −0.448565 −2.220462 2.268171 4 0.654814 −0.197945 −2.256156 −0.410249 −0.792705 −4.049918 4.142265 5 −2.004537 −3.451720 3.311102 1.787226 −0.682330 −3.930044 4.036821 6 −0.947058 −1.898302 −0.131517 4.187262 2.272720 7 0.485620 −0.138471 1.038285 −1.245135 −6.442445

[0700] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 1.199346 1.135219 2.839737 −4.673778 2.903983 −0.702760 0.935822 1 −1.274101 1.559637 1.386395 −0.042351 −0.874145 −3.244763 3.144603 2 −0.353335 0.325171 −1.677620 −0.793429 0.788584 −4.933673 4.849451 3 −0.678281 −2.157454 −3.084480 1.009661 0.327746 3.306738 −3.432135 4 1.116566 0.128203 −2.188180 2.315793 −1.815446 4.993960 −5.098751 5 −1.277371 −0.415757 −0.080374 −0.694424 −1.022831 −4.266839 4.064770 6 −4.836841 3.738553 −0.703345 0.271620 −0.626113 7 −0.953257 −0.463343 1.314770 −0.196871 −2.372877

[0701] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −1.810913 −0.014885 0.167362 −2.605120 −0.205378 −0.681096 0.709641 1 5.080080 1.259709 0.430446 0.680130 −3.098744 −3.611765 3.644697 2 −0.414857 −0.328851 −0.335724 5.756228 1.904646 4.377642 −4.419249 3 0.525909 1.767786 −0.375093 1.041263 −0.566611 −6.720907 6.647904 4 −7.166096 −0.912267 −1.948366 −1.117219 −1.237101 −2.355787 2.337121 5 −4.340267 −0.345630 −0.077869 3.853568 −2.550077 −2.249878 2.171079 6 −2.586306 −3.315458 0.378838 5.812339 −3.619375 7 0.213139 −1.546969 −10.991954 −1.186517 −0.502957

[0702] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 −2.439228 0.954525 1.242215 −27.696498 0.322283 −2.017057 2.095211 1 1.998281 1.928331 0.638520 −1.415280 1.871968 6.487561 −6.308325 2 −0.869648 −0.994059 0.768856 0.368344 1.457719 −4.867902 4.744858 3 0.295868 −0.257773 1.422994 0.033843 −4.658167 −2.392888 2.192236 4 −1.800394 −2.612705 −1.668799 51.649234 −0.537556 1.222661 −1.270161 5 0.992302 −0.938952 1.104910 3.731820 1.651959 −1.649461 1.594009 6 −1.787379 −1.045545 2.711432 0.288323 −0.572490 7 −0.374909 −0.877122 −1.918442 214.812434 −1.773228

[0703] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 3.984308 −0.300188 6.132831 1.776838 1.182643 −0.141300 −0.062816 1 −2.478863 0.891740 −0.185527 −0.442487 1.045499 −5.041497 4.985260 2 0.389668 0.650328 −289.318971 0.651142 0.169117 −7.230831 7.280185 3 0.370846 0.503667 21.787679 1.820010 −0.802930 2.464335 −2.250474 4 −0.950033 −0.054657 0.942573 −1.024688 −1.842654 2.637713 −2.636534 5 3.200645 0.464231 0.728644 1.784671 −5.371345 −3.675622 3.704625 6 0.647747 2.560388 −0.798268 3.237414 −4.493387 7 −1.276096 −1.593493 66.059880 0.493228 −0.126844

[0704] Input layer hidden layer (nodes) output layer (nodes) node/weight 1st 2nd 3rd 4th 5th 1st 2nd 0 0.888004 0.521346 −0.513845 0.767983 −0.956920 −1.088033 1.264836 1 0.191409 1.634987 −0.771837 −2.402982 −1.003714 −4.407106 4.589468 2 2.233326 0.767802 −10.205298 0.362276 0.797006 −4.385751 4.466996 3 −0.588252 −5.586697 0.233547 0.586147 1.589040 5.286517 −5.562157 4 −1.544910 −0.829764 0.624734 −5.119879 −0.276545 −0.907527 0.809701 5 −0.361805 0.397313 −1.973167 −2.953926 −0.614287 −5.146765 5.284392 6 −0.136039 −1.488352 −3.541771 3.717852 −1.091340 7 −8.058644 −1.997797 1.520159 −0.638158 1.013775

[0705] The EGAD14F preprocessing information is the same for each of the 8 neural networks in the consensus. The input is preprocessed by subtracting the mean value and dividing by the standard deviation. Node Mean Standard Deviation 1 0.152031 0.359287 2 0.91796 0.108036 3 0.517693 0.500015 4 0.490092 0.667659 5 2.144928 2.291734 6 0.281782 0.450163 7 0.195282 0.396677

[0706] EGAD14 is a set of 8 consensus networks trained similarly to EGAD14 f, except that the input variables did not include the variable representing the result of the fFN ELISA test. This network can be used as a point of care application to give immediate result to the clinician rather than the 24 to 48 hours required to process the fFN sample.

EXAMPLE 14 Training of Consensus Neural Networks on Specific subsets of Pat07 Variables

[0707] The examples shows the results of a task designed to quantitate the contribution of pat07 variables to pat07 performance, and to develop endometriosis networks using minimal numbers of pat07 variables.

[0708] Tasks:

[0709] 1. Train final consensus networks using the following combination of Pat07 variables:

[0710] a. All 14 minus Hx Endo (13 variables total)

[0711] b. All 14 minus pelvic pain (13 variables total)

[0712] c. All 14 minus dysmenorrhea (13 variables total)

[0713] d. All 14 minus pelvic surgery (13 variables total)

[0714] 2. Train final consensus networks using other combinations of Pat07 variables.

[0715] a. Hx Endo, pelvic pain, and dysmenorrhea

[0716] b. Hx Endo, pelvic pain, dysmenorrhea and Hx pelvic surgery

[0717] 3. Train final consensus networks using other combinations of pat07 variables as indicated from above results.

Methodology Used

[0718] Using the original patient database, training examples were generated for each of the combinations of variables to be evaluated. These training examples contained only the variables required for the given consensus run. TrainDos™ was used in batch mode to train a set of eight neural networks for each of the combinations of variables to be evaluated. The networks were trained using the same parameters as the Pat07 training runs. The only difference was the setting of the random number seeds for each network. Each network was trained on the full 510 record database.

[0719] From these training runs, a consensus of the outputs was generated in an Excel spreadsheet so that the performance of each of the networks could be evaluated.

Results

[0720] Since these runs were final training runs, the effects of eliminating variables could be seen but did not give as clear an indication as can be achieved by the holdout method.

Conclusions

[0721] The results of the variable selection runs on the full training example for the purposes of determining the contribution of a given set of variables is not as good a method as the evaluation method used in the variable selection process. The “holdout” method for evaluation with a partition of 5 and 20 net consensus gives a substantially better statistic for comparison of variables.

EXAMPLE 15 METHOD AND APPARATUS FOR AIDING IN THE DIAGNOSIS OF ENDOMETRIOSIS USING A PLURALITY OF PARAMETERS SUITED FOR ANALYSIS THROUGH A NEURAL NETWORK (PAT07)

[0722]FIG. 7 is a schematic diagram of an embodiment of one type of neural network 10 trained on clinical data of the form used for the consensus network (FIG. 10) of a plurality of neural networks. The structure is stored in digital form, along with weight values and data to be processed in a digital computer. This first type neural network 10 contains three layers, an input layer 12, a hidden layer 14 and an output layer 16. The input layer 12 has fourteen input preprocessors 17-30, each of which is provided with a normalizer (not shown) which generates a mean and standard deviation value to weight the clinical factors which are input into the input layer. The mean and standard deviation values are unique to the network training data. The input layer preprocessors 17-30 are each coupled to first and second processing elements 48, 50 of the hidden layer 14 via paths 51-64 and 65-78 so that each hidden layer processing element 48, 50 receives a value or signal from each input preprocessor 17-30. Each path is provided with a unique weight based on the results of training on training data. The unique weights 80-93 and 95-108 are non-linearly related to the output and are unique for each network structure and initial values of the training data. The final value of the weights are based on the initialized values assigned for network training. The combination of the weights that result from training comprise a functional apparatus whose description as expressed in weights produces a desired solution, or more specifically a preliminary indicator of a diagnosis for endometriosis.

[0723] For the endometriosis test provided herein, the factors used to train the neural network and upon which the output is based are the past history of the disease, number of births, dysmenorrhea, age, pelvic pain, history of pelvic surgery, smoking quantity per day, medication history, number of pregnancies, number of abortions, abnormal PAP/dysplasia, pregnancy hypertension, genital warts and diabetes. These fourteen factors have been determined to be a set of the most influential (greatest sensitivity) from the original set of over forty clinical factors. (Other sets of influential factors have been derived, see, EXAMPLES, above).

[0724] The hidden layer 14 is biased by bias weights 94, 119 provided via paths 164 and 179 to the processing elements 48 and 50. The output layer 16 contains two output processing elements 120, 122. The output layer 16 receives input from both hidden layer processing elements 48, 50 via paths 123, 124 and 125, 126. The output layer processing elements 120, 122 are weighted by weights 110, 112 and 114, 116. The output layer 16 is biased by bias weights 128, 130 provided via paths 129 and 131 to the processing elements 120 and 122.

[0725] The preliminary indication of the presence, absence or severity of endometriosis is the output pair of values A and B from the two processing elements 120, 122. The values are always positive between zero and one. One of the indicators is indicative that endometriosis is present. The other one of the indicators is indicative that endometriosis is absent. While the output pair A, B provide generally valid indication of the disease, a consensus network of trained neural networks provides a higher confidence index.

[0726] Referring to FIG. 10, a final indicator pair C, D is based on an analysis of a consensus of preliminary indicator pairs from a plurality, specifically eight, trained neural networks 10A-10H (FIG. 10). Each preliminary indicator pair A, B is provided to one of two consensus processors 150, 152. via paths 133-140 and 141-148. The first consensus processor 150 processes all positive indicators. The second consensus processor 152 processes all negative indicators. Each consensus processor 150, 152 is an averager, i.e., it merely forms a linear combination, such as an average, of the collection of like preliminary indicator pairs A, B. The resultant confidence indicator pair is the desired result, where the inputs are the set of clinical factors for the patient under test.

[0727]FIG. 9 illustrates a typical processor element 120. Similar processors 48 and 50 have more input elements, and processor element 122 is substantially identical. Typical processor element 120 comprises a plurality of weight multipliers 110, 114, 128 on respective input paths (numbering in total herein 15, 16 or 3 per element and shown herein as part of the processor element 120). The weighted values from the weight multipliers are coupled to a summer 156. The summer 156 output is coupled to an activation function 158, such as a sigmoid transfer function or an arctangent transfer function. The processor elements can be implemented as dedicated hardware or in a software function.

[0728] A sensitivity analysis can be performed to determine the relative importance of the clinical factors. The sensitivity analysis is performed on a digital computer as follows: A trained neural network is run in the forward mode (no training) for each training example (input data group for which true output is known or suspected). The output of the network for each training example is then recorded. Thereafter, the network is rerun with each input variable being replaced by the average value of that input variable over the entire training example. The difference in values for each output is then squared and summed (accumulated) to obtain individual sums.

[0729] This sensitivity analysis process is performed for each training example. Each of the resultant sums is then normalized according to conventional processes so that if all variables contributed equally to the single resultant output, the normalized value would be 1.0. From this information, the normalized value can be ranked in order of importance.

[0730] In analysis of clinical data, it was determined that the order of sensitivity of factors for this neural network system are the past history of the disease, number of births, dysmenorrhea, age, pelvic pain, history of pelvic surgery, smoking quantity per day, medication history, number of pregnancies, number of abortions, abnormal PAP/dysplasia, pregnancy hypertension, genital warts and diabetes.

[0731] A specific neural network system has been trained and has been found to be an effective diagnostic tool. The neural network system, as illustrated by FIGS. 7 and 10, is described as follows:

[0732] Weights, in order of identification and not in order of sensitivity:

[0733] 0. Bias

[0734] 1. Age

[0735] 2. Diabetes

[0736] 3. Pregnancy hypertension

[0737] 4. Smoking Packs/Day

[0738] 5. #Pregnancies

[0739] 6. #Births

[0740] 7. #Abortions

[0741] 8. Genital Warts

[0742] 9. Abnormal PAP/Dysplasia

[0743] 10. History of Endometriosis

[0744] 11. History of Pelvic Surgery

[0745] 12. Medication History

[0746] 13. Pelvic Pain

[0747] 14. Dysmenorrhea

[0748] are as follows for each of eight of the first type of neural networks 10:

[0749] First neural network A: 1st Hidden 2nd Hidden 1st Output 2nd Output Node\weight Layer Layer Layer Layer 0 0.15 0.77 −0.12 0.12 1 −1.19 2.25 −0.44 0.44 2 −0.76 −2.30 0.66 −0.65 3 3.01 −1.48 4 1.81 −0.85 5 1.87 0.27 6 3.56 −1.70 7 −0.48 −0.47 8 1.33 0.84 9 −1.96 −6.19 10 −4.45 0.50 11 1.36 −0.95 12 −1.61 0.40 13 −1.97 2.38 14 −0.91 1.86

[0750] First Neural Network B: 1st Hidden 2nd Hidden 1st Output 2nd Output Node/weight Layer Layer Layer Layer 0 −0.16 −1.62 0.70 −0.70 1 −3.30 0.79 −0.69 0.69 2 0.85 0.45 −0.65 0.65 3 1.00 2.14 4 1.00 3.82 5 −0.81 3.93 6 1 .57 3.96 7 −1.40 2.27 8 0.46 −0.54 9 1.16 1.51 10 −0.80 −4.76 11 −0.01 2.83 12 −1.19 0.74 13 −1.10 −0.43 14 −2.29 −0.17

[0751] First Neural Network C 1st Hidden 2nd Hidden 1st Output 2nd Output Node/weight Layer Layer Layer Layer 0 0.94 0.77 0.10 −0.10 1 1.43 3.31 −0.90 0.90 2 0.30 −1.48 0.87 −0.87 3 1.17 −0.83 4 2.11 0.60 5 −1.16 −2.09 6 1.033 −1.39 7 −0.68 −0.40 8 −0.88 −0.19 9 0.31 −0.89 10 −1.74 1.36 11 1.62 0.59 12 −1.49 −1.11 13 −1.05 0.26 14 −0.41 1.036

[0752] First Neural Network D 1st Hidden 2nd Hidden 1st Output 2nd Output Node\weight Layer Layer Layer Layer 0 1.08 −0.03 −1.43 1.30 1 1.27 −0.58 1.39 1.28 2 0.89 −0.46 1.28 1.17 3 −1.00 −0.94 4 −1.74 0.73 5 −0.40 0.10 6 −1.38 0.55 7 1.26 −0.79 8 1.06 −0.10 9 0.66 −1.36 10 0.71 1.01 11 −0.57 0.00 12 0.67 −0.38 13 1.89 −0.49 14 −0.90 1.57

[0753] First Neural Network E 1st Hidden 2nd Hidden 1st Output 2nd Output Node/Weight Layer Layer Layer Layer 0 0.14 −3.93 0.46 −0.46 1 −2.12 −1.07 −0.52 0.51 2 8.36 1.16 −0.80 0.82 3 1.02 1.39 4 1.79 1.01 5 0.31 −1.08 6 2.87 2.33 7 0.84 0.76 8 −1.24 −0.51 9 −1.75 −0.31 10 −2.98 −1.92 11 1.72 0.59 12 −1.22 0.06 13 −2.47 −0.76 14 −1.14 −1.44

[0754] First Neural Network F 1st Hidden 2nd Hidden 1st Output 2nd Output Node\weight Layer Layer Layer Layer 0 −1.19 0.82 0.68 −0.68 1 −2.93 0.19 −0.67 0.67 2 1.19 0.72 −0.58 0.59 3 6.85 0.83 4 1.08 0.59 5 0.66 0.07 6 1.65 1.06 7 −0.28 0.51 8 −1.63 1.04 9 −1.15 1.47 10 −0.80 −1.97 11 0.43 0.97 12 −0.13 −0.91 13 −3.10 0.15 14 −2.27 0.09

[0755] First Neural Network G 1st Hidden 2nd Hidden 1st Output 2nd Output Node\weight Layer Layer Layer Layer 0 −1.18 1.08 0.69 −0.69 1 −2.55 1.11 −0.70 0.70 2 0.48 0.52 −0.50 0.50 3 −1.40 1.41 4 1.11 0.55 5 −0.28 −0.48 6 2.33 −0.23 7 0.33 0.44 8 −1.92 −1.23 9 0.99 0.77 10 −1.41 −2.96 11 0.68 1.40 12 −0.28 −0.28 13 −1.66 −0.64 14 −0.79 −2.38

[0756] First Neural Network H 1st Hidden 2nd Hidden 1st Output 2nd Output Node\weight Layer Layer Layer Layer 0 15.74 −2.48 0.017 −0.75 1 −0.76 −2.49 0.41 0.34 2 −0.91 0.99 −0.84 0.85 3 −1.13 1.97 4 −0.75 2.41 5 −0.66 1.51 6 −0.83 1.01 7 1.03 −0.26 8 0.75 −0.76 9 −0.48 2.00 10 −0.48 −5.03 11 2.01 1.77 12 −0.015 −0.77 13 0.25 −2.29 14 1.11 −2.01

[0757] Normalized Observation Value For First Type Neural Networks Mean Standard Deviation −0.000000 1.000000 0.01 0.08 0.01 0.09 0.16 0.37 1.09 1.39 0.55 0.94 0.54 0.93 0.01 0.10 0.03 0.17 0.23 0.42 0.65 0.48 0.39 0.49 0.19 0.39 0.72 0.45

[0758] Further, as provided herein, the results of biochemical tests, such as tests according to the ELISA format test, may be used to produce trained augmented neural network systems to produce a relatively higher confidence level in terms of sensitivity and specificity. These second type neural networks are illustrated in FIG. 8. The numbering is identical to FIG. 7, except for the addition of a node 31 in the input layer 12 and a pair of weights 109 and 111. All weights, however, in the network change upon training with the additional biochemical result. The exact weight set is dependent on the specific biochemical test training example.

[0759] The training system provided herein may be used. Alternative training techniques may also be used (see, e.g., Baxt, “Use of an Artificial Neural Network for the Diagnosis of Myocardial Infarction,” Annals of Internal Medicine 115, p.843 (Dec. 1, 1991); “Improving the Accuracy of an Artificial Neural Network Using Multiple Differently Trained Networks,” Neural Computation 4, p. 772 (1992)).

[0760] In evaluating the test results, it was noted that a high score correlated with presence of disease, a low score correlated with absence of the disease, and extreme scores raised confidence, while midrange scores reduced confidence. The presence of endometriosis was indicated by an output of 0.6 or above, and its absence by 0.4 or less. It was also noted that higher relative scores correlated with higher relative severity of the disease. The methods herein, minimize the number of patients that require further, often surgical, procedures to establish the presence, absence or severity of the disease condition.

[0761] Since modifications will be apparent to those of skill in this art, it is intended that this invention be limited only by the scope of the appended claims. 

What is claimed:
 1. A computer system, comprising a neural network or plurality thereof trained for diagnosing endometriosis.
 2. A method for diagnosing endometriosis in a subject, comprising: querying and examining the patient to assess the answers to at least three of the following questions: past history of endometriosis, number of births, dysmenorrhea, age, pelvic pain, history of pelvic surgery, smoking and if yes, the number of packs/day, medication history, number of pregnancies, number of abortions, abnormal PAP smear/dysplasia, pregnancy hyperplasia, genital warts and diabetes; and based upon the results of the answers determining whether the patient has endometriosis.
 3. A computer system, comprising a neural network or plurality thereof trained for assessing the risk of delivery within a selected time period, wherein the time period is within seven or fourteen days of performing a biochemical test to measure fetal fibronectin in a sample from a pregnant subject or the time period is prior to thirty five weeks of gestation.
 4. The system of claim 3, wherein the time period is within seven days of performing a biochemical test to measure fetal fibronectin.
 5. The system of claim 3, wherein the time period is within or fourteen days of performing a biochemical test to measure fetal fibronectin.
 6. The system of claim 3, wherein the time period is prior to thirty five weeks of gestation. 